diff --git a/src/backend/libc/c.rs b/src/backend/libc/c.rs index e5bc61e25..617a93abd 100644 --- a/src/backend/libc/c.rs +++ b/src/backend/libc/c.rs @@ -488,14 +488,15 @@ pub(super) use readwrite_pv64v2::{preadv64v2 as preadv2, pwritev64v2 as pwritev2 mod statx_flags { pub(crate) use linux_raw_sys::general::{ STATX_ALL, STATX_ATIME, STATX_BASIC_STATS, STATX_BLOCKS, STATX_BTIME, STATX_CTIME, - STATX_DIOALIGN, STATX_GID, STATX_INO, STATX_MNT_ID, STATX_MODE, STATX_MTIME, STATX_NLINK, - STATX_SIZE, STATX_TYPE, STATX_UID, + STATX_DIOALIGN, STATX_DIO_READ_ALIGN, STATX_GID, STATX_INO, STATX_MNT_ID, + STATX_MNT_ID_UNIQUE, STATX_MODE, STATX_MTIME, STATX_NLINK, STATX_SIZE, STATX_SUBVOL, + STATX_TYPE, STATX_UID, STATX_WRITE_ATOMIC, }; pub(crate) use linux_raw_sys::general::{ STATX_ATTR_APPEND, STATX_ATTR_AUTOMOUNT, STATX_ATTR_COMPRESSED, STATX_ATTR_DAX, STATX_ATTR_ENCRYPTED, STATX_ATTR_IMMUTABLE, STATX_ATTR_MOUNT_ROOT, STATX_ATTR_NODUMP, - STATX_ATTR_VERITY, + STATX_ATTR_VERITY, STATX_ATTR_WRITE_ATOMIC, }; } #[cfg(feature = "fs")] diff --git a/src/backend/linux_raw/c.rs b/src/backend/linux_raw/c.rs index 762cdd479..b604b421b 100644 --- a/src/backend/linux_raw/c.rs +++ b/src/backend/linux_raw/c.rs @@ -373,14 +373,15 @@ pub(crate) use reboot_symbols::*; mod statx_flags { pub(crate) use linux_raw_sys::general::{ STATX_ALL, STATX_ATIME, STATX_BASIC_STATS, STATX_BLOCKS, STATX_BTIME, STATX_CTIME, - STATX_DIOALIGN, STATX_GID, STATX_INO, STATX_MNT_ID, STATX_MODE, STATX_MTIME, STATX_NLINK, - STATX_SIZE, STATX_TYPE, STATX_UID, + STATX_DIOALIGN, STATX_DIO_READ_ALIGN, STATX_GID, STATX_INO, STATX_MNT_ID, + STATX_MNT_ID_UNIQUE, STATX_MODE, STATX_MTIME, STATX_NLINK, STATX_SIZE, STATX_SUBVOL, + STATX_TYPE, STATX_UID, STATX_WRITE_ATOMIC, }; pub(crate) use linux_raw_sys::general::{ STATX_ATTR_APPEND, STATX_ATTR_AUTOMOUNT, STATX_ATTR_COMPRESSED, STATX_ATTR_DAX, STATX_ATTR_ENCRYPTED, STATX_ATTR_IMMUTABLE, STATX_ATTR_MOUNT_ROOT, STATX_ATTR_NODUMP, - STATX_ATTR_VERITY, + STATX_ATTR_VERITY, STATX_ATTR_WRITE_ATOMIC, }; } #[cfg(any( diff --git a/src/fs/statx.rs b/src/fs/statx.rs index f8be29f7d..86740a489 100644 --- a/src/fs/statx.rs +++ b/src/fs/statx.rs @@ -116,6 +116,15 @@ bitflags! { /// `STATX_DIOALIGN` (since Linux 6.1) const DIOALIGN = c::STATX_DIOALIGN; + /// `STATX_MNT_ID_UNIQUE` (since Linux 6.8) + const MNT_ID_UNIQUE = c::STATX_MNT_ID_UNIQUE; + + /// `STATX_SUBVOL` (since Linux 6.10) + const SUBVOL = c::STATX_SUBVOL; + + /// `STATX_WRITE_ATOMIC ` (since Linux 6.11) + const WRITE_ATOMIC = c::STATX_WRITE_ATOMIC; + /// `STATX_ALL` const ALL = c::STATX_ALL; @@ -156,6 +165,9 @@ bitflags! { /// `STATX_ATTR_DAX` const DAX = c::STATX_ATTR_DAX as u64; + /// `STATX_ATTR_WRITE_ATOMIC` + const WRITE_ATOMIC = c::STATX_ATTR_WRITE_ATOMIC as u64; + /// const _ = !0; }