Re: [PATCH 2/3] tools headers UAPI: Sync linux/fs.h with the kernel sources

Lorenzo Stoakes <[email protected]>
Newsgroups dev.linux.lists.criu,org.kernel.vger.linux-doc,org.kernel.vger.linux-fsdevel,org.kernel.vger.linux-kernel,org.kvack.linux-mm
Message-ID <[email protected]>
On Mon, Mar 24, 2025 at 06:53:27AM +0000, Andrei Vagin wrote:
> From: Andrei Vagin <[email protected]>
>
> Required for a new PAGEMAP_SCAN test to verify guard region reporting.
>
> Signed-off-by: Andrei Vagin <[email protected]>

Reviewed-by: Lorenzo Stoakes <[email protected]>

> ---
>  tools/include/uapi/linux/fs.h | 19 ++++++++++++++++++-
>  1 file changed, 18 insertions(+), 1 deletion(-)
>
> diff --git a/tools/include/uapi/linux/fs.h b/tools/include/uapi/linux/fs.h
> index 8a27bc5c7a7f..24ddf7bc4f25 100644
> --- a/tools/include/uapi/linux/fs.h
> +++ b/tools/include/uapi/linux/fs.h
> @@ -40,6 +40,15 @@
>  #define BLOCK_SIZE_BITS 10
>  #define BLOCK_SIZE (1<<BLOCK_SIZE_BITS)
>
> +/* flags for integrity meta */
> +#define IO_INTEGRITY_CHK_GUARD		(1U << 0) /* enforce guard check */
> +#define IO_INTEGRITY_CHK_REFTAG		(1U << 1) /* enforce ref check */
> +#define IO_INTEGRITY_CHK_APPTAG		(1U << 2) /* enforce app check */
> +
> +#define IO_INTEGRITY_VALID_FLAGS (IO_INTEGRITY_CHK_GUARD | \
> +				  IO_INTEGRITY_CHK_REFTAG | \
> +				  IO_INTEGRITY_CHK_APPTAG)
> +
>  #define SEEK_SET	0	/* seek relative to beginning of file */
>  #define SEEK_CUR	1	/* seek relative to current file position */
>  #define SEEK_END	2	/* seek relative to end of file */
> @@ -329,9 +338,16 @@ typedef int __bitwise __kernel_rwf_t;
>  /* per-IO negation of O_APPEND */
>  #define RWF_NOAPPEND	((__force __kernel_rwf_t)0x00000020)
>
> +/* Atomic Write */
> +#define RWF_ATOMIC	((__force __kernel_rwf_t)0x00000040)
> +
> +/* buffered IO that drops the cache after reading or writing data */
> +#define RWF_DONTCACHE	((__force __kernel_rwf_t)0x00000080)
> +
>  /* mask of flags supported by the kernel */
>  #define RWF_SUPPORTED	(RWF_HIPRI | RWF_DSYNC | RWF_SYNC | RWF_NOWAIT |\
> -			 RWF_APPEND | RWF_NOAPPEND)
> +			 RWF_APPEND | RWF_NOAPPEND | RWF_ATOMIC |\
> +			 RWF_DONTCACHE)
>
>  #define PROCFS_IOCTL_MAGIC 'f'
>
> @@ -347,6 +363,7 @@ typedef int __bitwise __kernel_rwf_t;
>  #define PAGE_IS_PFNZERO		(1 << 5)
>  #define PAGE_IS_HUGE		(1 << 6)
>  #define PAGE_IS_SOFT_DIRTY	(1 << 7)
> +#define PAGE_IS_GUARD		(1 << 8)
>
>  /*
>   * struct page_region - Page region with flags
> --
> 2.49.0.395.g12beb8f557-goog
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.