Re: [PATCH 01/29] exportfs: add new EXPORT_OP_STABLE_HANDLES flag

Jan Kara
2026-01-16T10:46:03Z

On Thu 15-01-26 12:47:32, Jeff Layton wrote:
> At one time, nfsd could take the presence of struct export_operations to
> be an indicator that a filesystem was exportable via NFS. Since then, a
> lot of filesystems have grown export operations in order to provide
> filehandle support. Some of those (e.g. kernfs, pidfs, and nsfs) are not
> suitable for export via NFS since they lack filehandles that are
> stable across reboot.
>
> Add a new EXPORT_OP_STABLE_HANDLES flag that indicates that the
> filesystem supports perisistent filehandles, a requirement for nfs
> export. While in there, switch to the BIT() macro for defining these
> flags.
>
> For now, the flag is not checked anywhere. That will come later after
> we've added it to the existing filesystems that need to remain
> exportable.
>
> Signed-off-by: Jeff Layton <jlayton@kernel.org>

...

> -#define EXPORT_OP_FLUSH_ON_CLOSE (0x20) /* fs flushes file data on close */
> -#define EXPORT_OP_NOLOCKS (0x40) /* no file locking support */
> +#define EXPORT_OP_FLUSH_ON_CLOSE BIT(5) /* fs flushes file data on close */
> +#define EXPORT_OP_NOLOCKS BIT(6) /* no file locking support */
> +#define EXPORT_OP_STABLE_HANDLES BIT(7) /* required for nfsd export */

The comment "required for nfsd export" doesn't quite match the name. I'd
change the comment to something like "file handles are stable across
reboot". Otherwise feel free to add:

Reviewed-by: Jan Kara <jack@suse.cz>

Honza
--
Jan Kara <jack@suse.com>
SUSE Labs, CR