pub struct Statx {Show 20 fields
pub mask: u32,
pub blksize: u32,
pub attributes: u64,
pub nlink: u32,
pub uid: u32,
pub gid: u32,
pub mode: u16,
pub ino: u64,
pub size: u64,
pub blocks: u64,
pub attributes_mask: u64,
pub atime: StatxTimestampRaw,
pub btime: StatxTimestampRaw,
pub ctime: StatxTimestampRaw,
pub mtime: StatxTimestampRaw,
pub rdev_major: u32,
pub rdev_minor: u32,
pub dev_major: u32,
pub dev_minor: u32,
pub mnt_id: u64,
/* private fields */
}Expand description
Miroir brut #[repr(C)] de struct statx (256 octets, cf. linux/stat.h).
Contrairement à StatxResult (forme décodée, indépendante de l’ABI), ce
type est le tampon de sortie écrit directement par le kernel :
io_uring’s IORING_OP_STATX y dépose les métadonnées de façon asynchrone.
Les champs portent les noms kernel (zone d’interface, ADR-029). Construire
via Statx::default (zéro-initialisé) avant de le confier au ring.
Fields§
§mask: u32Champs effectivement remplis (stx_mask).
blksize: u32Granularité d’E/S préférée (stx_blksize).
attributes: u64Attributs supplémentaires (stx_attributes).
nlink: u32Nombre de liens physiques (stx_nlink).
uid: u32UID du propriétaire (stx_uid).
gid: u32GID du propriétaire (stx_gid).
mode: u16Type et permissions (stx_mode).
ino: u64Numéro d’inode (stx_ino).
size: u64Taille en octets (stx_size).
blocks: u64Blocs de 512 octets alloués (stx_blocks).
attributes_mask: u64Masque d’attributs supportés (stx_attributes_mask).
atime: StatxTimestampRawHorodatage d’accès (stx_atime).
btime: StatxTimestampRawHorodatage de création (stx_btime).
ctime: StatxTimestampRawHorodatage de modification de métadonnées (stx_ctime).
mtime: StatxTimestampRawHorodatage de modification de données (stx_mtime).
rdev_major: u32Numéro majeur du device représenté (stx_rdev_major).
rdev_minor: u32Numéro mineur du device représenté (stx_rdev_minor).
dev_major: u32Numéro majeur du device contenant (stx_dev_major).
dev_minor: u32Numéro mineur du device contenant (stx_dev_minor).
mnt_id: u64Identifiant de point de montage (stx_mnt_id).