History

KVM: remove deprecated UAPIs

The deprecated interfaces were removed 15 years ago. KVM's device assignment was deprecated in 4.2 and removed 6.5 years ago; the only interest might be in compiling ancient versions of QEMU, but QEMU has been using its own imported copy of the kernel headers since June 2011. So again we go into archaeology territory; just remove the cruft.

Paolo Bonzini committed 3 years ago

Commit a5d3df81 parent c5b31cc3 files · +0 −107Browse files

Unified · Split

3 files
  1. Documentation/virt/kvm/api.rst +0 −12
  2. include/uapi/linux/kvm.h +0 −90
  3. virt/kvm/kvm_main.c +0 −5
Documentation/virt/kvm/api.rst+0−12
@@ -627,18 +627,6 @@ interrupt number dequeues the interrupt. · 626 unmodified lines
627This is an asynchronous vcpu ioctl and can be invoked from any thread.627This is an asynchronous vcpu ioctl and can be invoked from any thread.
628 628
629 629
6304.17 KVM_DEBUG_GUEST
631--------------------
632
633:Capability: basic
634:Architectures: none
635:Type: vcpu ioctl
636:Parameters: none)
637:Returns: -1 on error
638
639Support for this has been removed. Use KVM_SET_GUEST_DEBUG instead.
640
641
6424.18 KVM_GET_MSRS6304.18 KVM_GET_MSRS
643-----------------631-----------------
644 632
include/uapi/linux/kvm.h+0−90
@@ -16,76 +16,6 @@ · 15 unmodified lines
16 16
17#define KVM_API_VERSION 1217#define KVM_API_VERSION 12
18 18
19/* *** Deprecated interfaces *** */
20
21#define KVM_TRC_SHIFT 16
22
23#define KVM_TRC_ENTRYEXIT (1 << KVM_TRC_SHIFT)
24#define KVM_TRC_HANDLER (1 << (KVM_TRC_SHIFT + 1))
25
26#define KVM_TRC_VMENTRY (KVM_TRC_ENTRYEXIT + 0x01)
27#define KVM_TRC_VMEXIT (KVM_TRC_ENTRYEXIT + 0x02)
28#define KVM_TRC_PAGE_FAULT (KVM_TRC_HANDLER + 0x01)
29
30#define KVM_TRC_HEAD_SIZE 12
31#define KVM_TRC_CYCLE_SIZE 8
32#define KVM_TRC_EXTRA_MAX 7
33
34#define KVM_TRC_INJ_VIRQ (KVM_TRC_HANDLER + 0x02)
35#define KVM_TRC_REDELIVER_EVT (KVM_TRC_HANDLER + 0x03)
36#define KVM_TRC_PEND_INTR (KVM_TRC_HANDLER + 0x04)
37#define KVM_TRC_IO_READ (KVM_TRC_HANDLER + 0x05)
38#define KVM_TRC_IO_WRITE (KVM_TRC_HANDLER + 0x06)
39#define KVM_TRC_CR_READ (KVM_TRC_HANDLER + 0x07)
40#define KVM_TRC_CR_WRITE (KVM_TRC_HANDLER + 0x08)
41#define KVM_TRC_DR_READ (KVM_TRC_HANDLER + 0x09)
42#define KVM_TRC_DR_WRITE (KVM_TRC_HANDLER + 0x0A)
43#define KVM_TRC_MSR_READ (KVM_TRC_HANDLER + 0x0B)
44#define KVM_TRC_MSR_WRITE (KVM_TRC_HANDLER + 0x0C)
45#define KVM_TRC_CPUID (KVM_TRC_HANDLER + 0x0D)
46#define KVM_TRC_INTR (KVM_TRC_HANDLER + 0x0E)
47#define KVM_TRC_NMI (KVM_TRC_HANDLER + 0x0F)
48#define KVM_TRC_VMMCALL (KVM_TRC_HANDLER + 0x10)
49#define KVM_TRC_HLT (KVM_TRC_HANDLER + 0x11)
50#define KVM_TRC_CLTS (KVM_TRC_HANDLER + 0x12)
51#define KVM_TRC_LMSW (KVM_TRC_HANDLER + 0x13)
52#define KVM_TRC_APIC_ACCESS (KVM_TRC_HANDLER + 0x14)
53#define KVM_TRC_TDP_FAULT (KVM_TRC_HANDLER + 0x15)
54#define KVM_TRC_GTLB_WRITE (KVM_TRC_HANDLER + 0x16)
55#define KVM_TRC_STLB_WRITE (KVM_TRC_HANDLER + 0x17)
56#define KVM_TRC_STLB_INVAL (KVM_TRC_HANDLER + 0x18)
57#define KVM_TRC_PPC_INSTR (KVM_TRC_HANDLER + 0x19)
58
59struct kvm_user_trace_setup {
60 __u32 buf_size;
61 __u32 buf_nr;
62};
63
64#define __KVM_DEPRECATED_MAIN_W_0x06 \
65 _IOW(KVMIO, 0x06, struct kvm_user_trace_setup)
66#define __KVM_DEPRECATED_MAIN_0x07 _IO(KVMIO, 0x07)
67#define __KVM_DEPRECATED_MAIN_0x08 _IO(KVMIO, 0x08)
68
69#define __KVM_DEPRECATED_VM_R_0x70 _IOR(KVMIO, 0x70, struct kvm_assigned_irq)
70
71struct kvm_breakpoint {
72 __u32 enabled;
73 __u32 padding;
74 __u64 address;
75};
76
77struct kvm_debug_guest {
78 __u32 enabled;
79 __u32 pad;
80 struct kvm_breakpoint breakpoints[4];
81 __u32 singlestep;
82};
83
84#define __KVM_DEPRECATED_VCPU_W_0x87 _IOW(KVMIO, 0x87, struct kvm_debug_guest)
85
86/* *** End of deprecated interfaces *** */
87
88
89/* for KVM_SET_USER_MEMORY_REGION */19/* for KVM_SET_USER_MEMORY_REGION */
90struct kvm_userspace_memory_region {20struct kvm_userspace_memory_region {
91 __u32 slot;21 __u32 slot;
@@ -967,9 +897,6 @@ struct kvm_ppc_resize_hpt { · 875 unmodified lines
967 */897 */
968#define KVM_GET_VCPU_MMAP_SIZE _IO(KVMIO, 0x04) /* in bytes */898#define KVM_GET_VCPU_MMAP_SIZE _IO(KVMIO, 0x04) /* in bytes */
969#define KVM_GET_SUPPORTED_CPUID _IOWR(KVMIO, 0x05, struct kvm_cpuid2)899#define KVM_GET_SUPPORTED_CPUID _IOWR(KVMIO, 0x05, struct kvm_cpuid2)
970#define KVM_TRACE_ENABLE __KVM_DEPRECATED_MAIN_W_0x06
971#define KVM_TRACE_PAUSE __KVM_DEPRECATED_MAIN_0x07
972#define KVM_TRACE_DISABLE __KVM_DEPRECATED_MAIN_0x08
973#define KVM_GET_EMULATED_CPUID _IOWR(KVMIO, 0x09, struct kvm_cpuid2)900#define KVM_GET_EMULATED_CPUID _IOWR(KVMIO, 0x09, struct kvm_cpuid2)
974#define KVM_GET_MSR_FEATURE_INDEX_LIST _IOWR(KVMIO, 0x0a, struct kvm_msr_list)901#define KVM_GET_MSR_FEATURE_INDEX_LIST _IOWR(KVMIO, 0x0a, struct kvm_msr_list)
975 902
@@ -1536,20 +1463,8 @@ struct kvm_s390_ucas_mapping { · 560 unmodified lines
1536 _IOW(KVMIO, 0x67, struct kvm_coalesced_mmio_zone)1463 _IOW(KVMIO, 0x67, struct kvm_coalesced_mmio_zone)
1537#define KVM_UNREGISTER_COALESCED_MMIO \1464#define KVM_UNREGISTER_COALESCED_MMIO \
1538 _IOW(KVMIO, 0x68, struct kvm_coalesced_mmio_zone)1465 _IOW(KVMIO, 0x68, struct kvm_coalesced_mmio_zone)
1539#define KVM_ASSIGN_PCI_DEVICE _IOR(KVMIO, 0x69, \
1540 struct kvm_assigned_pci_dev)
1541#define KVM_SET_GSI_ROUTING _IOW(KVMIO, 0x6a, struct kvm_irq_routing)1466#define KVM_SET_GSI_ROUTING _IOW(KVMIO, 0x6a, struct kvm_irq_routing)
1542/* deprecated, replaced by KVM_ASSIGN_DEV_IRQ */
1543#define KVM_ASSIGN_IRQ __KVM_DEPRECATED_VM_R_0x70
1544#define KVM_ASSIGN_DEV_IRQ _IOW(KVMIO, 0x70, struct kvm_assigned_irq)
1545#define KVM_REINJECT_CONTROL _IO(KVMIO, 0x71)1467#define KVM_REINJECT_CONTROL _IO(KVMIO, 0x71)
1546#define KVM_DEASSIGN_PCI_DEVICE _IOW(KVMIO, 0x72, \
1547 struct kvm_assigned_pci_dev)
1548#define KVM_ASSIGN_SET_MSIX_NR _IOW(KVMIO, 0x73, \
1549 struct kvm_assigned_msix_nr)
1550#define KVM_ASSIGN_SET_MSIX_ENTRY _IOW(KVMIO, 0x74, \
1551 struct kvm_assigned_msix_entry)
1552#define KVM_DEASSIGN_DEV_IRQ _IOW(KVMIO, 0x75, struct kvm_assigned_irq)
1553#define KVM_IRQFD _IOW(KVMIO, 0x76, struct kvm_irqfd)1468#define KVM_IRQFD _IOW(KVMIO, 0x76, struct kvm_irqfd)
1554#define KVM_CREATE_PIT2 _IOW(KVMIO, 0x77, struct kvm_pit_config)1469#define KVM_CREATE_PIT2 _IOW(KVMIO, 0x77, struct kvm_pit_config)
1555#define KVM_SET_BOOT_CPU_ID _IO(KVMIO, 0x78)1470#define KVM_SET_BOOT_CPU_ID _IO(KVMIO, 0x78)
@@ -1566,9 +1481,6 @@ struct kvm_s390_ucas_mapping { · 10 unmodified lines
1566* KVM_CAP_VM_TSC_CONTROL to set defaults for a VM */1481* KVM_CAP_VM_TSC_CONTROL to set defaults for a VM */
1567#define KVM_SET_TSC_KHZ _IO(KVMIO, 0xa2)1482#define KVM_SET_TSC_KHZ _IO(KVMIO, 0xa2)
1568#define KVM_GET_TSC_KHZ _IO(KVMIO, 0xa3)1483#define KVM_GET_TSC_KHZ _IO(KVMIO, 0xa3)
1569/* Available with KVM_CAP_PCI_2_3 */
1570#define KVM_ASSIGN_SET_INTX_MASK _IOW(KVMIO, 0xa4, \
1571 struct kvm_assigned_pci_dev)
1572/* Available with KVM_CAP_SIGNAL_MSI */1484/* Available with KVM_CAP_SIGNAL_MSI */
1573#define KVM_SIGNAL_MSI _IOW(KVMIO, 0xa5, struct kvm_msi)1485#define KVM_SIGNAL_MSI _IOW(KVMIO, 0xa5, struct kvm_msi)
1574/* Available with KVM_CAP_PPC_GET_SMMU_INFO */1486/* Available with KVM_CAP_PPC_GET_SMMU_INFO */
@@ -1621,8 +1533,6 @@ struct kvm_s390_ucas_mapping { · 46 unmodified lines
1621#define KVM_SET_SREGS _IOW(KVMIO, 0x84, struct kvm_sregs)1533#define KVM_SET_SREGS _IOW(KVMIO, 0x84, struct kvm_sregs)
1622#define KVM_TRANSLATE _IOWR(KVMIO, 0x85, struct kvm_translation)1534#define KVM_TRANSLATE _IOWR(KVMIO, 0x85, struct kvm_translation)
1623#define KVM_INTERRUPT _IOW(KVMIO, 0x86, struct kvm_interrupt)1535#define KVM_INTERRUPT _IOW(KVMIO, 0x86, struct kvm_interrupt)
1624/* KVM_DEBUG_GUEST is no longer supported, use KVM_SET_GUEST_DEBUG instead */
1625#define KVM_DEBUG_GUEST __KVM_DEPRECATED_VCPU_W_0x87
1626#define KVM_GET_MSRS _IOWR(KVMIO, 0x88, struct kvm_msrs)1536#define KVM_GET_MSRS _IOWR(KVMIO, 0x88, struct kvm_msrs)
1627#define KVM_SET_MSRS _IOW(KVMIO, 0x89, struct kvm_msrs)1537#define KVM_SET_MSRS _IOW(KVMIO, 0x89, struct kvm_msrs)
1628#define KVM_SET_CPUID _IOW(KVMIO, 0x8a, struct kvm_cpuid)1538#define KVM_SET_CPUID _IOW(KVMIO, 0x8a, struct kvm_cpuid)
virt/kvm/kvm_main.c+0−5
@@ -5497,11 +5497,6 @@ static long kvm_dev_ioctl(struct file *filp, · 5496 unmodified lines
5497 r += PAGE_SIZE; /* coalesced mmio ring page */5497 r += PAGE_SIZE; /* coalesced mmio ring page */
5498#endif5498#endif
5499 break;5499 break;
5500 case KVM_TRACE_ENABLE:
5501 case KVM_TRACE_PAUSE:
5502 case KVM_TRACE_DISABLE:
5503 r = -EOPNOTSUPP;
5504 break;
5505 default:5500 default:
5506 return kvm_arch_dev_ioctl(filp, ioctl, arg);5501 return kvm_arch_dev_ioctl(filp, ioctl, arg);
5507 }5502 }

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t