include/uapi/linux/scif_ioctl.h
Source file repositories/reference/linux-study-clean/include/uapi/linux/scif_ioctl.h
File Facts
- System
- Linux kernel
- Corpus path
include/uapi/linux/scif_ioctl.h- Extension
.h- Size
- 6382 bytes
- Lines
- 217
- 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.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/types.h
Detected Declarations
struct scif_port_idstruct scifioctl_connectstruct scifioctl_acceptstruct scifioctl_msgstruct scifioctl_regstruct scifioctl_unregstruct scifioctl_copystruct scifioctl_fence_markstruct scifioctl_fence_signalstruct scifioctl_node_ids
Annotated Snippet
struct scif_port_id {
__u16 node;
__u16 port;
};
/**
* struct scifioctl_connect - used for SCIF_CONNECT IOCTL
* @self: used to read back the assigned port_id
* @peer: destination node and port to connect to
*/
struct scifioctl_connect {
struct scif_port_id self;
struct scif_port_id peer;
};
/**
* struct scifioctl_accept - used for SCIF_ACCEPTREQ IOCTL
* @flags: flags
* @peer: global id of peer endpoint
* @endpt: new connected endpoint descriptor
*/
struct scifioctl_accept {
__s32 flags;
struct scif_port_id peer;
__u64 endpt;
};
/**
* struct scifioctl_msg - used for SCIF_SEND/SCIF_RECV IOCTL
* @msg: message buffer address
* @len: message length
* @flags: flags
* @out_len: number of bytes sent/received
*/
struct scifioctl_msg {
__u64 msg;
__s32 len;
__s32 flags;
__s32 out_len;
};
/**
* struct scifioctl_reg - used for SCIF_REG IOCTL
* @addr: starting virtual address
* @len: length of range
* @offset: offset of window
* @prot: read/write protection
* @flags: flags
* @out_offset: offset returned
*/
struct scifioctl_reg {
__u64 addr;
__u64 len;
__s64 offset;
__s32 prot;
__s32 flags;
__s64 out_offset;
};
/**
* struct scifioctl_unreg - used for SCIF_UNREG IOCTL
* @offset: start of range to unregister
* @len: length of range to unregister
*/
struct scifioctl_unreg {
__s64 offset;
__u64 len;
};
/**
* struct scifioctl_copy - used for SCIF DMA copy IOCTLs
*
* @loffset: offset in local registered address space to/from
* which to copy
* @len: length of range to copy
* @roffset: offset in remote registered address space to/from
* which to copy
* @addr: user virtual address to/from which to copy
* @flags: flags
*
* This structure is used for SCIF_READFROM, SCIF_WRITETO, SCIF_VREADFROM
* and SCIF_VREADFROM IOCTL's.
*/
struct scifioctl_copy {
__s64 loffset;
__u64 len;
__s64 roffset;
__u64 addr;
__s32 flags;
};
Annotation
- Immediate include surface: `linux/types.h`.
- Detected declarations: `struct scif_port_id`, `struct scifioctl_connect`, `struct scifioctl_accept`, `struct scifioctl_msg`, `struct scifioctl_reg`, `struct scifioctl_unreg`, `struct scifioctl_copy`, `struct scifioctl_fence_mark`, `struct scifioctl_fence_signal`, `struct scifioctl_node_ids`.
- Atlas domain: Core OS / Core Kernel Interface.
- Implementation status: source implementation candidate.
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.