Skip to content
  • Arnaldo Carvalho de Melo's avatar
    tools headers: Sync copy of kvm UAPI headers · d976a6e9
    Arnaldo Carvalho de Melo authored
    In 801e459a ("KVM: x86: Add a framework for supporting MSR-based
    features") a new ioctl was introduced, which with this sync of the kvm
    UAPI headers, makes 'perf trace' know about it:
    
      $ cd /tmp/build/perf/trace/beauty/generated/ioctl/
      $ diff -u kvm_ioctl_array.c.old kvm_ioctl_array.c
      --- /tmp/kvm_ioctl_array.c	2018-03-05 11:55:38.409145056 -0300
      +++ /tmp/build/perf/trace/beauty/generated/ioctl/kvm_ioctl_array.c	2018-03-05 11:56:17.456153501 -0300
      @@ -6,6 +6,7 @@
     	[0x04] = "GET_VCPU_MMAP_SIZE",
     	[0x05] = "GET_SUPPORTED_CPUID",
     	[0x09] = "GET_EMULATED_CPUID",
      +	[0x0a] = "GET_MSR_FEATURE_INDEX_LIST",
     	[0x40] = "SET_MEMORY_REGION",
     	[0x41] = "CREATE_VCPU",
     	[0x42] = "GET_DIRTY_LOG",
    
    So when using 'perf trace -e ioctl' that will appear along with the
    others, like in this excerpt of a system wide session:
    
      14.556 ( 0.006 ms): CPU 0/KVM/16077 ioctl(fd: 19<anon_inode:kvm-vcpu:0>, cmd: KVM_RUN) = 0
      14.565 ( 0.006 ms): CPU 0/KVM/16077 ioctl(fd: 19<anon_inode:kvm-vcpu:0>, cmd: KVM_RUN) = 0
      14.573 (         ): CPU 0/KVM/16077 ioctl(fd: 19<anon_inode:kvm-vcpu:0>, cmd: KVM_RUN) ...
      34.075 ( 0.016 ms): gnome-shell/2192 ioctl(fd: 8</dev/dri/card0>, cmd: DRM_I915_GEM_BUSY, arg: 0x7ffe4e73e850) = 0
      40.549 ( 0.012 ms): gnome-shell/2192 ioctl(fd: 8</dev/dri/card0>, cmd: DRM_I915_GEM_BUSY, arg: 0x7ffe4e73ece0) = 0
      40.625 ( 0.005 ms): gnome-shell/2192 ioctl(fd: 8</dev/dri/card0>, cmd: DRM_I915_GEM_BUSY, arg: 0x7ffe4e73e940) = 0
      40.632 ( 0.003 ms): gnome-shell/2192 ioctl(fd: 8</dev/dri/card0>, cmd: DRM_I915_GEM_MADVISE, arg: 0x7ffe4e73e9b0) = 0
    
    This also silences the perf build header copy drift verifier:
    
      make: Entering directory '/home/acme/git/perf/tools/perf'
        BUILD:   Doing 'make -j4' parallel build
      Warning: Kernel ABI header at 'tools/include/uapi/linux/kvm.h' differs from latest version at 'include/uapi/linux/kvm.h'
    
    Cc: Adrian Hunter <adrian.hunter@intel.com>
    Cc: David Ahern <dsahern@gmail.com>
    Cc: Jiri Olsa <jolsa@kernel.org>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Radim Krčmář <rkrcmar@redhat.com>
    Cc: Tom Lendacky <thomas.lendacky@amd.com>
    Cc: Wang Nan <wangnan0@huawei.com>
    Link: https://lkml.kernel.org/n/tip-h31oz5g0mt1dh2s2ajq6o6no@git.kernel.org
    
    
    Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    d976a6e9