• Arnaldo Carvalho de Melo's avatar
    tools headers UAPI: Sync kvm headers with the kernel sources · e30dca91
    Arnaldo Carvalho de Melo authored
    To pick the changes in:
    
      a5d3df8a ("KVM: remove deprecated UAPIs")
      6d722835 ("KVM x86/xen: add an override for PVCLOCK_TSC_STABLE_BIT")
      89ea60c2 ("KVM: x86: Add support for "protected VMs" that can utilize private memory")
      8dd2eee9 ("KVM: x86/mmu: Handle page fault for private memory")
      a7800aa8 ("KVM: Add KVM_CREATE_GUEST_MEMFD ioctl() for guest-specific backing memory")
      5a475554 ("KVM: Introduce per-page memory attributes")
      16f95f3b ("KVM: Add KVM_EXIT_MEMORY_FAULT exit to report faults to userspace")
      bb58b90b ("KVM: Introduce KVM_SET_USER_MEMORY_REGION2")
      3f9cd0ca ("KVM: arm64: Allow userspace to get the writable masks for feature ID registers")
    
    That automatically adds support for some new ioctls and remove a bunch
    of deprecated ones.
    
    This ends up making the new binary to forget about the deprecated one,
    so when used in an older system it will not be able to resolve those
    codes to strings.
    
      $ tools/perf/trace/beauty/kvm_ioctl.sh > before
      $ cp include/uapi/linux/kvm.h tools/include/uapi/linux/kvm.h
      $ tools/perf/trace/beauty/kvm_ioctl.sh > after
      $ diff -u before after
      --- before	2024-01-27 14:48:16.523014020 -0300
      +++ after	2024-01-27 14:48:24.183932866 -0300
      @@ -14,6 +14,7 @@
       	[0x46] = "SET_USER_MEMORY_REGION",
       	[0x47] = "SET_TSS_ADDR",
       	[0x48] = "SET_IDENTITY_MAP_ADDR",
      +	[0x49] = "SET_USER_MEMORY_REGION2",
       	[0x60] = "CREATE_IRQCHIP",
       	[0x61] = "IRQ_LINE",
       	[0x62] = "GET_IRQCHIP",
      @@ -22,14 +23,8 @@
       	[0x65] = "GET_PIT",
       	[0x66] = "SET_PIT",
       	[0x67] = "IRQ_LINE_STATUS",
      -	[0x69] = "ASSIGN_PCI_DEVICE",
       	[0x6a] = "SET_GSI_ROUTING",
      -	[0x70] = "ASSIGN_DEV_IRQ",
       	[0x71] = "REINJECT_CONTROL",
      -	[0x72] = "DEASSIGN_PCI_DEVICE",
      -	[0x73] = "ASSIGN_SET_MSIX_NR",
      -	[0x74] = "ASSIGN_SET_MSIX_ENTRY",
      -	[0x75] = "DEASSIGN_DEV_IRQ",
       	[0x76] = "IRQFD",
       	[0x77] = "CREATE_PIT2",
       	[0x78] = "SET_BOOT_CPU_ID",
      @@ -66,7 +61,6 @@
       	[0x9f] = "GET_VCPU_EVENTS",
       	[0xa0] = "SET_VCPU_EVENTS",
       	[0xa3] = "ENABLE_CAP",
      -	[0xa4] = "ASSIGN_SET_INTX_MASK",
       	[0xa5] = "SIGNAL_MSI",
       	[0xa6] = "GET_XCRS",
       	[0xa7] = "SET_XCRS",
      @@ -97,6 +91,8 @@
       	[0xcd] = "SET_SREGS2",
       	[0xce] = "GET_STATS_FD",
       	[0xd0] = "XEN_HVM_EVTCHN_SEND",
      +	[0xd2] = "SET_MEMORY_ATTRIBUTES",
      +	[0xd4] = "CREATE_GUEST_MEMFD",
       	[0xe0] = "CREATE_DEVICE",
       	[0xe1] = "SET_DEVICE_ATTR",
       	[0xe2] = "GET_DEVICE_ATTR",
      $
    
    This silences these perf build warnings:
    
      Warning: Kernel ABI header differences:
        diff -u tools/include/uapi/linux/kvm.h include/uapi/linux/kvm.h
        diff -u tools/arch/x86/include/uapi/asm/kvm.h arch/x86/include/uapi/asm/kvm.h
    
    Cc: Adrian Hunter <adrian.hunter@intel.com>
    Cc: Chao Peng <chao.p.peng@linux.intel.com>
    Cc: Ian Rogers <irogers@google.com>
    Cc: Jing Zhang <jingzhangos@google.com>
    Cc: Jiri Olsa <jolsa@kernel.org>
    Cc: Namhyung Kim <namhyung@kernel.org>
    Cc: Oliver Upton <oliver.upton@linux.dev>
    Cc: Paolo Bonzini <pbonzini@redhat.com>
    Cc: Paul Durrant <pdurrant@amazon.com>
    Cc: Sean Christopherson <seanjc@google.com>
    Link: https://lore.kernel.org/lkml/ZbVLbkngp4oq13qN@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
    e30dca91
kvm.h 12.8 KB