Re: [PATCH 04/25] vfs: Implement parameter value retrieval with fsinfo() [ver #13]

From: David Howells
Date: Tue Jun 18 2019 - 18:40:00 EST


Miklos Szeredi <miklos@xxxxxxxxxx> wrote:

> Again, don't blindly transform s_flags into options, because some of
> them may have been internally manipulated by the filesystem.

In what filesystems do I need to undo this manipulation?

> You could do a helper for filesystems that does the the common ones
> (ro/sync/dirsync) but all of that *should* go through the filesystem.

I don't agree, but since you keep insisting, I've changed the helper function
that renders these so that it now takes s_flags as an argument and is called
from generic_fsinfo() if the filesystem doesn't handle FSINFO_ATTR_PARAMETERS.

Therefore, every filesystem that handles FSINFO_ATTR_PARAMETERS, *must* call
the function itself (or do the noting directly) otherwise these parameters
will not get rendered.

The helper function has been exported, and the calling filesystem can give any
s_flags it likes. All the filesystems so far just use
path->dentry->d_sb->s_flags.

> Same goes for vfs_parse_sb_flag() btw. It should be moved into each
> filesystem's ->parse_param() and not be a mandatory thing.

I disagree. Every filesystem *must* be able to accept these standard flags,
even if it then ignores them.

David