include/uapi/linux/vfio_zdev.h
Source file repositories/reference/linux-study-clean/include/uapi/linux/vfio_zdev.h
File Facts
- System
- Linux kernel
- Corpus path
include/uapi/linux/vfio_zdev.h- Extension
.h- Size
- 2542 bytes
- Lines
- 86
- Domain
- Core OS
- Bucket
- Core Kernel Interface
- Inferred role
- Core OS: implementation source
- Status
- source implementation candidate
Why This File Exists
Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
- Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
- Touches IRQ or DMA behavior; this matters for the representative real-device path.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/types.hlinux/vfio.h
Detected Declarations
struct vfio_device_info_cap_zpci_basestruct vfio_device_info_cap_zpci_groupstruct vfio_device_info_cap_zpci_utilstruct vfio_device_info_cap_zpci_pfip
Annotated Snippet
struct vfio_device_info_cap_zpci_base {
struct vfio_info_cap_header header;
__u64 start_dma; /* Start of available DMA addresses */
__u64 end_dma; /* End of available DMA addresses */
__u16 pchid; /* Physical Channel ID */
__u16 vfn; /* Virtual function number */
__u16 fmb_length; /* Measurement Block Length (in bytes) */
__u8 pft; /* PCI Function Type */
__u8 gid; /* PCI function group ID */
/* End of version 1 */
__u32 fh; /* PCI function handle */
/* End of version 2 */
};
/**
* VFIO_DEVICE_INFO_CAP_ZPCI_GROUP - Base PCI Function Group information
*
* This capability provides a set of descriptive information about the group of
* PCI functions that the associated device belongs to.
*/
struct vfio_device_info_cap_zpci_group {
struct vfio_info_cap_header header;
__u64 dasm; /* DMA Address space mask */
__u64 msi_addr; /* MSI address */
__u64 flags;
#define VFIO_DEVICE_INFO_ZPCI_FLAG_REFRESH 1 /* Program-specified TLB refresh */
__u16 mui; /* Measurement Block Update Interval */
__u16 noi; /* Maximum number of MSIs */
__u16 maxstbl; /* Maximum Store Block Length */
__u8 version; /* Supported PCI Version */
/* End of version 1 */
__u8 reserved;
__u16 imaxstbl; /* Maximum Interpreted Store Block Length */
/* End of version 2 */
};
/**
* VFIO_DEVICE_INFO_CAP_ZPCI_UTIL - Utility String
*
* This capability provides the utility string for the associated device, which
* is a device identifier string made up of EBCDID characters. 'size' specifies
* the length of 'util_str'.
*/
struct vfio_device_info_cap_zpci_util {
struct vfio_info_cap_header header;
__u32 size;
__u8 util_str[];
};
/**
* VFIO_DEVICE_INFO_CAP_ZPCI_PFIP - PCI Function Path
*
* This capability provides the PCI function path string, which is an identifier
* that describes the internal hardware path of the device. 'size' specifies
* the length of 'pfip'.
*/
struct vfio_device_info_cap_zpci_pfip {
struct vfio_info_cap_header header;
__u32 size;
__u8 pfip[];
};
#endif
Annotation
- Immediate include surface: `linux/types.h`, `linux/vfio.h`.
- Detected declarations: `struct vfio_device_info_cap_zpci_base`, `struct vfio_device_info_cap_zpci_group`, `struct vfio_device_info_cap_zpci_util`, `struct vfio_device_info_cap_zpci_pfip`.
- Atlas domain: Core OS / Core Kernel Interface.
- Implementation status: source implementation candidate.
- IRQ or DMA behavior appears here, which is relevant to the selected PCIe/NVMe device path.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.