Re: [PATCH 02/67] vfs: Provide S_KERNEL_FILE inode flag

Jeff Layton
2021-10-19T18:10:29Z

On Mon, 2021-10-18 at 15:50 +0100, David Howells wrote:
> Provide an S_KERNEL_FILE inode flag that a kernel service, e.g. cachefiles,
> can set to ward off other kernel services and drivers (including itself)
> from using files it is actively using.
>
> Signed-off-by: David Howells <dhowells@redhat.com>
> ---
>
> include/linux/fs.h | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/include/linux/fs.h b/include/linux/fs.h
> index e7a633353fd2..197493507744 100644
> --- a/include/linux/fs.h
> +++ b/include/linux/fs.h
> @@ -2250,6 +2250,7 @@ struct super_operations {
> #define S_ENCRYPTED (1 << 14) /* Encrypted file (using fs/crypto/) */
> #define S_CASEFOLD (1 << 15) /* Casefolded file */
> #define S_VERITY (1 << 16) /* Verity file (using fs/verity/) */
> +#define S_KERNEL_FILE (1 << 17) /* File is in use by the kernel (eg. fs/cachefiles) */
>
> /*
> * Note that nosuid etc flags are inode-specific: setting some file-system
>
>

It'd be better to fold this in with the patch where the first user is
added. That would make it easier to see how you intend to use it.
--
Jeff Layton <jlayton@redhat.com>