linux-headers: Update to Linux v7.3-rc1

VIRTIO_ID_MEDIA was added previously, synchronize the rest
of the headers to the same version.

Signed-off-by: Albert Esteve <aesteve@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Message-ID: <20260821135038.2676679-1-aesteve@redhat.com>
This commit is contained in:
Albert Esteve authored and Michael S. Tsirkin committed 2026-09-11 15:54:47 -04:00
1 parent 905e8c7e26
commit 80ff7d93b9
6 files changed
+149 -7

No files matched your search

+6
View File
@@ -2015,7 +2015,13 @@ enum ethtool_link_mode_bit_indices {
ETHTOOL_LINK_MODE_100000baseLR4_ER4_Full_BIT = 39,
ETHTOOL_LINK_MODE_50000baseSR2_Full_BIT = 40,
ETHTOOL_LINK_MODE_1000baseX_Full_BIT = 41,
/* Despite the "baseCR" in 10000baseCR, this is not an IEEE 802.3 baseCR
* It represents SFF-8431 Appendix-E SFP+ Direct Attach (10G-SFI-DA).
* The name is kept as-is for uAPI backward compatibility.
*/
ETHTOOL_LINK_MODE_10000baseCR_Full_BIT = 42,
ETHTOOL_LINK_MODE_10000baseSR_Full_BIT = 43,
ETHTOOL_LINK_MODE_10000baseLR_Full_BIT = 44,
ETHTOOL_LINK_MODE_10000baseLRM_Full_BIT = 45,
+42 -3
View File
@@ -57,6 +57,7 @@ enum {
IOMMUFD_CMD_IOAS_CHANGE_PROCESS = 0x92,
IOMMUFD_CMD_VEVENTQ_ALLOC = 0x93,
IOMMUFD_CMD_HW_QUEUE_ALLOC = 0x94,
IOMMUFD_CMD_IOAS_NOIOMMU_GET_PA = 0x95,
};
/**
@@ -219,6 +220,33 @@ struct iommu_ioas_map {
};
#define IOMMU_IOAS_MAP _IO(IOMMUFD_TYPE, IOMMUFD_CMD_IOAS_MAP)
/**
* struct iommu_ioas_noiommu_get_pa - ioctl(IOMMU_IOAS_NOIOMMU_GET_PA)
* @size: sizeof(struct iommu_ioas_noiommu_get_pa)
* @flags: Reserved, must be 0 for now
* @ioas_id: IOAS ID to query IOVA to PA mapping from
* @__reserved: Must be 0
* @iova: IOVA to query
* @length: On input, non-zero maximum number of bytes to query starting from
* @iova. On output, number of physically contiguous bytes starting
* from @out_phys, capped by the input length.
* @out_phys: Output physical address the IOVA maps to
*
* Query the physical address backing an IOVA range. The beginning of the
* range must be mapped already and length must be non-zero. For noiommu
* devices doing unsafe DMA only.
*/
struct iommu_ioas_noiommu_get_pa {
__u32 size;
__u32 flags;
__u32 ioas_id;
__u32 __reserved;
__aligned_u64 iova;
__aligned_u64 length;
__aligned_u64 out_phys;
};
#define IOMMU_IOAS_NOIOMMU_GET_PA _IO(IOMMUFD_TYPE, IOMMUFD_CMD_IOAS_NOIOMMU_GET_PA)
/**
* struct iommu_ioas_map_file - ioctl(IOMMU_IOAS_MAP_FILE)
* @size: sizeof(struct iommu_ioas_map_file)
@@ -574,11 +602,22 @@ struct iommu_hw_info_vtd {
__aligned_u64 ecap_reg;
};
/**
* enum iommu_hw_info_arm_smmuv3_flags - Flags for ARM SMMUv3 hw_info
* @IOMMU_HW_INFO_ARM_SMMUV3_ERRATA_REPEAT_TLBI_CFGI:
* If set, user space must issue TLBI/CFGI+SYNC commands twice due to
* hardware erratum T264-SMMU-3. See the description at
* arm_smmu_erratum_repeat_tlbi_cfgi_key.
*/
enum iommu_hw_info_arm_smmuv3_flags {
IOMMU_HW_INFO_ARM_SMMUV3_ERRATA_REPEAT_TLBI_CFGI = 1 << 0,
};
/**
* struct iommu_hw_info_arm_smmuv3 - ARM SMMUv3 hardware information
* (IOMMU_HW_INFO_TYPE_ARM_SMMUV3)
*
* @flags: Must be set to 0
* @flags: Combination of enum iommu_hw_info_arm_smmuv3_flags
* @__reserved: Must be 0
* @idr: Implemented features for ARM SMMU Non-secure programming interface
* @iidr: Information about the implementation and implementer of ARM SMMU,
@@ -594,7 +633,7 @@ struct iommu_hw_info_vtd {
* idr[0]: ST_LEVEL, TERM_MODEL, STALL_MODEL, TTENDIAN , CD2L, ASID16, TTF
* idr[1]: SIDSIZE, SSIDSIZE
* idr[3]: BBML, RIL
* idr[5]: VAX, GRAN64K, GRAN16K, GRAN4K
* idr[5]: VAX, GRAN64K, GRAN16K, GRAN4K, DS
*
* - S1P should be assumed to be true if a NESTED HWPT can be created
* - VFIO/iommufd only support platforms with COHACC, it should be assumed to be
@@ -602,7 +641,7 @@ struct iommu_hw_info_vtd {
* - ATS is a per-device property. If the VMM describes any devices as ATS
* capable in ACPI/DT it should set the corresponding idr.
*
* This list may expand in future (eg E0PD, AIE, PBHA, D128, DS etc). It is
* This list may expand in future (eg E0PD, AIE, PBHA, D128 etc). It is
* important that VMMs do not read bits outside the list to allow for
* compatibility with future kernels. Several features in the SMMUv3
* architecture are not currently supported by the kernel for nesting: HTTU,
+50 -4
View File
@@ -25,7 +25,8 @@
#define UFFD_API ((__u64)0xAA)
#define UFFD_API_REGISTER_MODES (UFFDIO_REGISTER_MODE_MISSING | \
UFFDIO_REGISTER_MODE_WP | \
UFFDIO_REGISTER_MODE_MINOR)
UFFDIO_REGISTER_MODE_MINOR | \
UFFDIO_REGISTER_MODE_RWP)
#define UFFD_API_FEATURES (UFFD_FEATURE_PAGEFAULT_FLAG_WP | \
UFFD_FEATURE_EVENT_FORK | \
UFFD_FEATURE_EVENT_REMAP | \
@@ -42,10 +43,13 @@
UFFD_FEATURE_WP_UNPOPULATED | \
UFFD_FEATURE_POISON | \
UFFD_FEATURE_WP_ASYNC | \
UFFD_FEATURE_MOVE)
UFFD_FEATURE_MOVE | \
UFFD_FEATURE_RWP | \
UFFD_FEATURE_RWP_ASYNC)
#define UFFD_API_IOCTLS \
((__u64)1 << _UFFDIO_REGISTER | \
(__u64)1 << _UFFDIO_UNREGISTER | \
(__u64)1 << _UFFDIO_SET_MODE | \
(__u64)1 << _UFFDIO_API)
#define UFFD_API_RANGE_IOCTLS \
((__u64)1 << _UFFDIO_WAKE | \
@@ -54,13 +58,15 @@
(__u64)1 << _UFFDIO_MOVE | \
(__u64)1 << _UFFDIO_WRITEPROTECT | \
(__u64)1 << _UFFDIO_CONTINUE | \
(__u64)1 << _UFFDIO_POISON)
(__u64)1 << _UFFDIO_POISON | \
(__u64)1 << _UFFDIO_RWPROTECT)
#define UFFD_API_RANGE_IOCTLS_BASIC \
((__u64)1 << _UFFDIO_WAKE | \
(__u64)1 << _UFFDIO_COPY | \
(__u64)1 << _UFFDIO_WRITEPROTECT | \
(__u64)1 << _UFFDIO_CONTINUE | \
(__u64)1 << _UFFDIO_POISON)
(__u64)1 << _UFFDIO_POISON | \
(__u64)1 << _UFFDIO_RWPROTECT)
/*
* Valid ioctl command number range with this API is from 0x00 to
@@ -79,6 +85,8 @@
#define _UFFDIO_WRITEPROTECT (0x06)
#define _UFFDIO_CONTINUE (0x07)
#define _UFFDIO_POISON (0x08)
#define _UFFDIO_RWPROTECT (0x09)
#define _UFFDIO_SET_MODE (0x0A)
#define _UFFDIO_API (0x3F)
/* userfaultfd ioctl ids */
@@ -103,6 +111,10 @@
struct uffdio_continue)
#define UFFDIO_POISON _IOWR(UFFDIO, _UFFDIO_POISON, \
struct uffdio_poison)
#define UFFDIO_RWPROTECT _IOWR(UFFDIO, _UFFDIO_RWPROTECT, \
struct uffdio_rwprotect)
#define UFFDIO_SET_MODE _IOW(UFFDIO, _UFFDIO_SET_MODE, \
struct uffdio_set_mode)
/* read() structure */
struct uffd_msg {
@@ -158,6 +170,7 @@ struct uffd_msg {
#define UFFD_PAGEFAULT_FLAG_WRITE (1<<0) /* If this was a write fault */
#define UFFD_PAGEFAULT_FLAG_WP (1<<1) /* If reason is VM_UFFD_WP */
#define UFFD_PAGEFAULT_FLAG_MINOR (1<<2) /* If reason is VM_UFFD_MINOR */
#define UFFD_PAGEFAULT_FLAG_RWP (1<<3) /* If reason is VM_UFFD_RWP */
struct uffdio_api {
/* userland asks for an API number and the features to enable */
@@ -230,6 +243,18 @@ struct uffdio_api {
*
* UFFD_FEATURE_MOVE indicates that the kernel supports moving an
* existing page contents from userspace.
*
* UFFD_FEATURE_RWP indicates that the kernel supports
* UFFDIO_REGISTER_MODE_RWP for read-write protection tracking.
* Pages are made inaccessible via UFFDIO_RWPROTECT and faults
* are delivered when the pages are re-accessed.
*
* UFFD_FEATURE_RWP_ASYNC indicates asynchronous mode for
* UFFDIO_REGISTER_MODE_RWP. When set, faults on read-write
* protected pages are auto-resolved by the kernel (PTE
* permissions restored immediately) without delivering a message
* to the userfaultfd handler. Use PAGEMAP_SCAN with inverted
* PAGE_IS_ACCESSED to find pages that were not re-accessed.
*/
#define UFFD_FEATURE_PAGEFAULT_FLAG_WP (1<<0)
#define UFFD_FEATURE_EVENT_FORK (1<<1)
@@ -248,6 +273,8 @@ struct uffdio_api {
#define UFFD_FEATURE_POISON (1<<14)
#define UFFD_FEATURE_WP_ASYNC (1<<15)
#define UFFD_FEATURE_MOVE (1<<16)
#define UFFD_FEATURE_RWP (1<<17)
#define UFFD_FEATURE_RWP_ASYNC (1<<18)
__u64 features;
__u64 ioctls;
@@ -263,6 +290,7 @@ struct uffdio_register {
#define UFFDIO_REGISTER_MODE_MISSING ((__u64)1<<0)
#define UFFDIO_REGISTER_MODE_WP ((__u64)1<<1)
#define UFFDIO_REGISTER_MODE_MINOR ((__u64)1<<2)
#define UFFDIO_REGISTER_MODE_RWP ((__u64)1<<3)
__u64 mode;
/*
@@ -356,6 +384,14 @@ struct uffdio_poison {
__s64 updated;
};
struct uffdio_rwprotect {
struct uffdio_range range;
/* !RWP means undo RWP-protection */
#define UFFDIO_RWPROTECT_MODE_RWP ((__u64)1<<0)
#define UFFDIO_RWPROTECT_MODE_DONTWAKE ((__u64)1<<1)
__u64 mode;
};
struct uffdio_move {
__u64 dst;
__u64 src;
@@ -374,6 +410,16 @@ struct uffdio_move {
__s64 move;
};
struct uffdio_set_mode {
/*
* Toggle async mode for features at runtime.
* Supported: UFFD_FEATURE_RWP_ASYNC.
* Setting a bit in both enable and disable is invalid.
*/
__u64 enable;
__u64 disable;
};
/*
* Flags for the userfaultfd(2) system call itself.
*/
+28
View File
@@ -14,6 +14,12 @@
#define VDUSE_API_VERSION_1 1
/* The VDUSE instance expects a request for vq ready */
#define VDUSE_F_QUEUE_READY 0
/* The VDUSE instance expects a request for suspend */
#define VDUSE_F_SUSPEND 1
/*
* Get the version of VDUSE API that kernel supported (VDUSE_API_VERSION).
* This is used for future extension.
@@ -63,6 +69,12 @@ struct vduse_dev_config {
*/
#define VDUSE_DESTROY_DEV _IOW(VDUSE_BASE, 0x03, char[VDUSE_NAME_MAX])
/* Get the VDUSE supported features */
#define VDUSE_GET_FEATURES _IOR(VDUSE_BASE, 0x04, __u64)
/* Set the VDUSE features */
#define VDUSE_SET_FEATURES _IOW(VDUSE_BASE, 0x05, __u64)
/* The ioctls for VDUSE device (/dev/vduse/$NAME) */
/**
@@ -325,6 +337,8 @@ enum vduse_req_type {
VDUSE_SET_STATUS,
VDUSE_UPDATE_IOTLB,
VDUSE_SET_VQ_GROUP_ASID,
VDUSE_SET_VQ_READY,
VDUSE_SUSPEND,
};
/**
@@ -372,6 +386,15 @@ struct vduse_iova_range_v2 {
__u32 padding;
};
/**
* struct vduse_vq_ready - Virtqueue ready request message
* @num: Virtqueue number
*/
struct vduse_vq_ready {
__u32 num;
__u32 ready;
};
/**
* struct vduse_dev_request - control request
* @type: request type
@@ -382,6 +405,7 @@ struct vduse_iova_range_v2 {
* @iova: IOVA range for updating
* @iova_v2: IOVA range for updating if API_VERSION >= 1
* @vq_group_asid: ASID of a virtqueue group
* @vq_ready: Virtqueue ready request
* @padding: padding
*
* Structure used by read(2) on /dev/vduse/$NAME.
@@ -399,6 +423,10 @@ struct vduse_dev_request {
*/
struct vduse_iova_range_v2 iova_v2;
struct vduse_vq_group_asid vq_group_asid;
/* Only if VDUSE_F_QUEUE_READY is negotiated */
struct vduse_vq_ready vq_ready;
__u32 padding[32];
};
};
+21
View File
@@ -1534,6 +1534,27 @@ struct vfio_device_feature_dma_buf {
*/
#define VFIO_DEVICE_FEATURE_MIG_PRECOPY_INFOv2 12
/**
* VFIO_DEVICE_FEATURE_ZPCI_ERROR feature provides PCI error information to
* userspace for vfio-pci devices on s390. On s390, PCI error recovery
* involves platform firmware and notification to operating systems is done
* by architecture specific mechanism. Exposing this information to
* userspace allows it to take appropriate actions to handle an
* error on the device.
*
* Userspace provides an opaque buffer of fixed length, and the kernel
* fills it with the zpci_ccdf_err data structure. The length of
* zpci_ccdf_err is provided to userspace via the
* VFIO_DEVICE_INFO_CAP_ZPCI_BASE capability.
*
* The ioctl returns -ENOMSG if there are no pending PCI errors.
*/
struct vfio_device_feature_zpci_err {
__aligned_u64 data;
};
#define VFIO_DEVICE_FEATURE_ZPCI_ERROR 13
/* -------- API for Type1 VFIO IOMMU -------- */
/**
+2
View File
@@ -32,6 +32,8 @@ struct vfio_device_info_cap_zpci_base {
/* End of version 1 */
__u32 fh; /* PCI function handle */
/* End of version 2 */
__u32 ccdf_err_length; /* PCI CCDF length */
/* End of version 3 */
};
/**