include/uapi/linux/fuse.h
Source file repositories/reference/linux-study-clean/include/uapi/linux/fuse.h
File Facts
- System
- Linux kernel
- Corpus path
include/uapi/linux/fuse.h- Extension
.h- Size
- 31930 bytes
- Lines
- 1312
- 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.hstdint.h
Detected Declarations
struct fuse_attrstruct fuse_sx_timestruct fuse_statxstruct fuse_kstatfsstruct fuse_file_lockstruct fuse_entry_outstruct fuse_forget_instruct fuse_forget_onestruct fuse_batch_forget_instruct fuse_getattr_instruct fuse_attr_outstruct fuse_statx_instruct fuse_statx_outstruct fuse_mknod_instruct fuse_mkdir_instruct fuse_rename_instruct fuse_rename2_instruct fuse_link_instruct fuse_setattr_instruct fuse_open_instruct fuse_create_instruct fuse_open_outstruct fuse_release_instruct fuse_flush_instruct fuse_read_instruct fuse_write_instruct fuse_write_outstruct fuse_statfs_outstruct fuse_fsync_instruct fuse_setxattr_instruct fuse_getxattr_instruct fuse_getxattr_outstruct fuse_lk_instruct fuse_lk_outstruct fuse_access_instruct fuse_init_instruct fuse_init_outstruct cuse_init_instruct cuse_init_outstruct fuse_interrupt_instruct fuse_bmap_instruct fuse_bmap_outstruct fuse_ioctl_instruct fuse_ioctl_iovecstruct fuse_ioctl_outstruct fuse_poll_instruct fuse_poll_outstruct fuse_notify_poll_wakeup_out
Annotated Snippet
struct fuse_attr {
uint64_t ino;
uint64_t size;
uint64_t blocks;
uint64_t atime;
uint64_t mtime;
uint64_t ctime;
uint32_t atimensec;
uint32_t mtimensec;
uint32_t ctimensec;
uint32_t mode;
uint32_t nlink;
uint32_t uid;
uint32_t gid;
uint32_t rdev;
uint32_t blksize;
uint32_t flags;
};
/*
* The following structures are bit-for-bit compatible with the statx(2) ABI in
* Linux.
*/
struct fuse_sx_time {
int64_t tv_sec;
uint32_t tv_nsec;
int32_t __reserved;
};
struct fuse_statx {
uint32_t mask;
uint32_t blksize;
uint64_t attributes;
uint32_t nlink;
uint32_t uid;
uint32_t gid;
uint16_t mode;
uint16_t __spare0[1];
uint64_t ino;
uint64_t size;
uint64_t blocks;
uint64_t attributes_mask;
struct fuse_sx_time atime;
struct fuse_sx_time btime;
struct fuse_sx_time ctime;
struct fuse_sx_time mtime;
uint32_t rdev_major;
uint32_t rdev_minor;
uint32_t dev_major;
uint32_t dev_minor;
uint64_t __spare2[14];
};
struct fuse_kstatfs {
uint64_t blocks;
uint64_t bfree;
uint64_t bavail;
uint64_t files;
uint64_t ffree;
uint32_t bsize;
uint32_t namelen;
uint32_t frsize;
uint32_t padding;
uint32_t spare[6];
};
struct fuse_file_lock {
uint64_t start;
uint64_t end;
uint32_t type;
uint32_t pid; /* tgid */
};
/**
* Bitmasks for fuse_setattr_in.valid
*/
#define FATTR_MODE (1 << 0)
#define FATTR_UID (1 << 1)
#define FATTR_GID (1 << 2)
#define FATTR_SIZE (1 << 3)
#define FATTR_ATIME (1 << 4)
#define FATTR_MTIME (1 << 5)
#define FATTR_FH (1 << 6)
#define FATTR_ATIME_NOW (1 << 7)
#define FATTR_MTIME_NOW (1 << 8)
#define FATTR_LOCKOWNER (1 << 9)
#define FATTR_CTIME (1 << 10)
#define FATTR_KILL_SUIDGID (1 << 11)
/**
Annotation
- Immediate include surface: `linux/types.h`, `stdint.h`.
- Detected declarations: `struct fuse_attr`, `struct fuse_sx_time`, `struct fuse_statx`, `struct fuse_kstatfs`, `struct fuse_file_lock`, `struct fuse_entry_out`, `struct fuse_forget_in`, `struct fuse_forget_one`, `struct fuse_batch_forget_in`, `struct fuse_getattr_in`.
- 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.