qemu with hax to log dma reads & writes jcs.org/2018/11/12/vfio

linux-headers: Update to kernel mainline commit b357bf602

Update our kernel headers to mainline commit
b357bf6023a948cf6a9472f07a1b0caac0e4f8e8
("Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm")

Signed-off-by: Eric Auger <eric.auger@redhat.com>
Message-id: 1529072910-16156-2-git-send-email-eric.auger@redhat.com
[PMM: clarified commit message]
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

authored by

Eric Auger and committed by
Peter Maydell
77d361b1 5ff9aaab

+47 -4
+8
include/standard-headers/linux/pci_regs.h
··· 506 506 #define PCI_EXP_DEVCTL_READRQ_256B 0x1000 /* 256 Bytes */ 507 507 #define PCI_EXP_DEVCTL_READRQ_512B 0x2000 /* 512 Bytes */ 508 508 #define PCI_EXP_DEVCTL_READRQ_1024B 0x3000 /* 1024 Bytes */ 509 + #define PCI_EXP_DEVCTL_READRQ_2048B 0x4000 /* 2048 Bytes */ 510 + #define PCI_EXP_DEVCTL_READRQ_4096B 0x5000 /* 4096 Bytes */ 509 511 #define PCI_EXP_DEVCTL_BCR_FLR 0x8000 /* Bridge Configuration Retry / FLR */ 510 512 #define PCI_EXP_DEVSTA 10 /* Device Status */ 511 513 #define PCI_EXP_DEVSTA_CED 0x0001 /* Correctable Error Detected */ ··· 655 657 #define PCI_EXP_LNKCAP2_SLS_16_0GB 0x00000010 /* Supported Speed 16GT/s */ 656 658 #define PCI_EXP_LNKCAP2_CROSSLINK 0x00000100 /* Crosslink supported */ 657 659 #define PCI_EXP_LNKCTL2 48 /* Link Control 2 */ 660 + #define PCI_EXP_LNKCTL2_TLS 0x000f 661 + #define PCI_EXP_LNKCTL2_TLS_2_5GT 0x0001 /* Supported Speed 2.5GT/s */ 662 + #define PCI_EXP_LNKCTL2_TLS_5_0GT 0x0002 /* Supported Speed 5GT/s */ 663 + #define PCI_EXP_LNKCTL2_TLS_8_0GT 0x0003 /* Supported Speed 8GT/s */ 664 + #define PCI_EXP_LNKCTL2_TLS_16_0GT 0x0004 /* Supported Speed 16GT/s */ 658 665 #define PCI_EXP_LNKSTA2 50 /* Link Status 2 */ 659 666 #define PCI_CAP_EXP_ENDPOINT_SIZEOF_V2 52 /* v2 endpoints with link end here */ 660 667 #define PCI_EXP_SLTCAP2 52 /* Slot Capabilities 2 */ ··· 981 988 #define PCI_EXP_DPC_CAP_DL_ACTIVE 0x1000 /* ERR_COR signal on DL_Active supported */ 982 989 983 990 #define PCI_EXP_DPC_CTL 6 /* DPC control */ 991 + #define PCI_EXP_DPC_CTL_EN_FATAL 0x0001 /* Enable trigger on ERR_FATAL message */ 984 992 #define PCI_EXP_DPC_CTL_EN_NONFATAL 0x0002 /* Enable trigger on ERR_NONFATAL message */ 985 993 #define PCI_EXP_DPC_CTL_INT_EN 0x0008 /* DPC Interrupt Enable */ 986 994
+1
include/standard-headers/linux/virtio_gpu.h
··· 260 260 }; 261 261 262 262 #define VIRTIO_GPU_CAPSET_VIRGL 1 263 + #define VIRTIO_GPU_CAPSET_VIRGL2 2 263 264 264 265 /* VIRTIO_GPU_CMD_GET_CAPSET_INFO */ 265 266 struct virtio_gpu_get_capset_info {
+3
include/standard-headers/linux/virtio_net.h
··· 57 57 * Steering */ 58 58 #define VIRTIO_NET_F_CTRL_MAC_ADDR 23 /* Set MAC address */ 59 59 60 + #define VIRTIO_NET_F_STANDBY 62 /* Act as standby for another device 61 + * with the same MAC. 62 + */ 60 63 #define VIRTIO_NET_F_SPEED_DUPLEX 63 /* Device set linkspeed and duplex */ 61 64 62 65 #ifndef VIRTIO_NET_NO_LEGACY
+1 -1
linux-headers/LICENSES/exceptions/Linux-syscall-note
··· 1 1 SPDX-Exception-Identifier: Linux-syscall-note 2 2 SPDX-URL: https://spdx.org/licenses/Linux-syscall-note.html 3 - SPDX-Licenses: GPL-2.0, GPL-2.0+, GPL-1.0+, LGPL-2.0, LGPL-2.0+, LGPL-2.1, LGPL-2.1+ 3 + SPDX-Licenses: GPL-2.0, GPL-2.0+, GPL-1.0+, LGPL-2.0, LGPL-2.0+, LGPL-2.1, LGPL-2.1+, GPL-2.0-only, GPL-2.0-or-later 4 4 Usage-Guide: 5 5 This exception is used together with one of the above SPDX-Licenses 6 6 to mark user space API (uapi) header files so they can be included
+6
linux-headers/LICENSES/preferred/GPL-2.0
··· 1 1 Valid-License-Identifier: GPL-2.0 2 + Valid-License-Identifier: GPL-2.0-only 2 3 Valid-License-Identifier: GPL-2.0+ 4 + Valid-License-Identifier: GPL-2.0-or-later 3 5 SPDX-URL: https://spdx.org/licenses/GPL-2.0.html 4 6 Usage-Guide: 5 7 To use this license in source code, put one of the following SPDX ··· 7 9 guidelines in the licensing rules documentation. 8 10 For 'GNU General Public License (GPL) version 2 only' use: 9 11 SPDX-License-Identifier: GPL-2.0 12 + or 13 + SPDX-License-Identifier: GPL-2.0-only 10 14 For 'GNU General Public License (GPL) version 2 or any later version' use: 11 15 SPDX-License-Identifier: GPL-2.0+ 16 + or 17 + SPDX-License-Identifier: GPL-2.0-or-later 12 18 License-Text: 13 19 14 20 GNU GENERAL PUBLIC LICENSE
+1
linux-headers/asm-arm/kvm.h
··· 91 91 #define KVM_VGIC_V3_ADDR_TYPE_DIST 2 92 92 #define KVM_VGIC_V3_ADDR_TYPE_REDIST 3 93 93 #define KVM_VGIC_ITS_ADDR_TYPE 4 94 + #define KVM_VGIC_V3_ADDR_TYPE_REDIST_REGION 5 94 95 95 96 #define KVM_VGIC_V3_DIST_SIZE SZ_64K 96 97 #define KVM_VGIC_V3_REDIST_SIZE (2 * SZ_64K)
+1
linux-headers/asm-arm/unistd-common.h
··· 354 354 #define __NR_pkey_alloc (__NR_SYSCALL_BASE + 395) 355 355 #define __NR_pkey_free (__NR_SYSCALL_BASE + 396) 356 356 #define __NR_statx (__NR_SYSCALL_BASE + 397) 357 + #define __NR_rseq (__NR_SYSCALL_BASE + 398) 357 358 358 359 #endif /* _ASM_ARM_UNISTD_COMMON_H */
+1
linux-headers/asm-arm64/kvm.h
··· 91 91 #define KVM_VGIC_V3_ADDR_TYPE_DIST 2 92 92 #define KVM_VGIC_V3_ADDR_TYPE_REDIST 3 93 93 #define KVM_VGIC_ITS_ADDR_TYPE 4 94 + #define KVM_VGIC_V3_ADDR_TYPE_REDIST_REGION 5 94 95 95 96 #define KVM_VGIC_V3_DIST_SIZE SZ_64K 96 97 #define KVM_VGIC_V3_REDIST_SIZE (2 * SZ_64K)
+3 -1
linux-headers/asm-generic/unistd.h
··· 732 732 __SYSCALL(__NR_pkey_free, sys_pkey_free) 733 733 #define __NR_statx 291 734 734 __SYSCALL(__NR_statx, sys_statx) 735 + #define __NR_io_pgetevents 292 736 + __SC_COMP(__NR_io_pgetevents, sys_io_pgetevents, compat_sys_io_pgetevents) 735 737 736 738 #undef __NR_syscalls 737 - #define __NR_syscalls 292 739 + #define __NR_syscalls 293 738 740 739 741 /* 740 742 * 32 bit systems traditionally used different
+1
linux-headers/asm-powerpc/unistd.h
··· 398 398 #define __NR_pkey_alloc 384 399 399 #define __NR_pkey_free 385 400 400 #define __NR_pkey_mprotect 386 401 + #define __NR_rseq 387 401 402 402 403 #endif /* _ASM_POWERPC_UNISTD_H_ */
+2
linux-headers/asm-x86/unistd_32.h
··· 382 382 #define __NR_pkey_free 382 383 383 #define __NR_statx 383 384 384 #define __NR_arch_prctl 384 385 + #define __NR_io_pgetevents 385 386 + #define __NR_rseq 386 385 387 386 388 #endif /* _ASM_X86_UNISTD_32_H */
+2
linux-headers/asm-x86/unistd_64.h
··· 334 334 #define __NR_pkey_alloc 330 335 335 #define __NR_pkey_free 331 336 336 #define __NR_statx 332 337 + #define __NR_io_pgetevents 333 338 + #define __NR_rseq 334 337 339 338 340 #endif /* _ASM_X86_UNISTD_64_H */
+2
linux-headers/asm-x86/unistd_x32.h
··· 287 287 #define __NR_pkey_alloc (__X32_SYSCALL_BIT + 330) 288 288 #define __NR_pkey_free (__X32_SYSCALL_BIT + 331) 289 289 #define __NR_statx (__X32_SYSCALL_BIT + 332) 290 + #define __NR_io_pgetevents (__X32_SYSCALL_BIT + 333) 291 + #define __NR_rseq (__X32_SYSCALL_BIT + 334) 290 292 #define __NR_rt_sigaction (__X32_SYSCALL_BIT + 512) 291 293 #define __NR_rt_sigreturn (__X32_SYSCALL_BIT + 513) 292 294 #define __NR_ioctl (__X32_SYSCALL_BIT + 514)
+3 -2
linux-headers/linux/kvm.h
··· 677 677 }; 678 678 679 679 #define KVM_X86_DISABLE_EXITS_MWAIT (1 << 0) 680 - #define KVM_X86_DISABLE_EXITS_HTL (1 << 1) 680 + #define KVM_X86_DISABLE_EXITS_HLT (1 << 1) 681 681 #define KVM_X86_DISABLE_EXITS_PAUSE (1 << 2) 682 682 #define KVM_X86_DISABLE_VALID_EXITS (KVM_X86_DISABLE_EXITS_MWAIT | \ 683 - KVM_X86_DISABLE_EXITS_HTL | \ 683 + KVM_X86_DISABLE_EXITS_HLT | \ 684 684 KVM_X86_DISABLE_EXITS_PAUSE) 685 685 686 686 /* for KVM_ENABLE_CAP */ ··· 948 948 #define KVM_CAP_S390_BPB 152 949 949 #define KVM_CAP_GET_MSR_FEATURES 153 950 950 #define KVM_CAP_HYPERV_EVENTFD 154 951 + #define KVM_CAP_HYPERV_TLBFLUSH 155 951 952 952 953 #ifdef KVM_CAP_IRQ_ROUTING 953 954
+12
linux-headers/linux/psp-sev.h
··· 30 30 SEV_PDH_GEN, 31 31 SEV_PDH_CERT_EXPORT, 32 32 SEV_PEK_CERT_IMPORT, 33 + SEV_GET_ID, 33 34 34 35 SEV_MAX, 35 36 }; ··· 121 122 __u32 pdh_cert_len; /* In/Out */ 122 123 __u64 cert_chain_address; /* In */ 123 124 __u32 cert_chain_len; /* In/Out */ 125 + } __attribute__((packed)); 126 + 127 + /** 128 + * struct sev_user_data_get_id - GET_ID command parameters 129 + * 130 + * @socket1: Buffer to pass unique ID of first socket 131 + * @socket2: Buffer to pass unique ID of second socket 132 + */ 133 + struct sev_user_data_get_id { 134 + __u8 socket1[64]; /* Out */ 135 + __u8 socket2[64]; /* Out */ 124 136 } __attribute__((packed)); 125 137 126 138 /**