On Tue 24-06-25 10:29:07, Christian Brauner wrote: > Allow to return the root of the global pidfs filesystem. > > Signed-off-by: Christian Brauner <brauner@xxxxxxxxxx> Looks good. Feel free to add: Reviewed-by: Jan Kara <jack@xxxxxxx> Honza > --- > fs/internal.h | 1 + > fs/pidfs.c | 11 +++++++++++ > 2 files changed, 12 insertions(+) > > diff --git a/fs/internal.h b/fs/internal.h > index 22ba066d1dba..ad256bccdc85 100644 > --- a/fs/internal.h > +++ b/fs/internal.h > @@ -353,3 +353,4 @@ int anon_inode_getattr(struct mnt_idmap *idmap, const struct path *path, > unsigned int query_flags); > int anon_inode_setattr(struct mnt_idmap *idmap, struct dentry *dentry, > struct iattr *attr); > +void pidfs_get_root(struct path *path); > diff --git a/fs/pidfs.c b/fs/pidfs.c > index ba526fdd4c4d..69b0541042b5 100644 > --- a/fs/pidfs.c > +++ b/fs/pidfs.c > @@ -31,6 +31,14 @@ > static struct kmem_cache *pidfs_attr_cachep __ro_after_init; > static struct kmem_cache *pidfs_xattr_cachep __ro_after_init; > > +static struct path pidfs_root_path = {}; > + > +void pidfs_get_root(struct path *path) > +{ > + *path = pidfs_root_path; > + path_get(path); > +} > + > /* > * Stashes information that userspace needs to access even after the > * process has been reaped. > @@ -1066,4 +1074,7 @@ void __init pidfs_init(void) > pidfs_mnt = kern_mount(&pidfs_type); > if (IS_ERR(pidfs_mnt)) > panic("Failed to mount pidfs pseudo filesystem"); > + > + pidfs_root_path.mnt = pidfs_mnt; > + pidfs_root_path.dentry = pidfs_mnt->mnt_root; > } > > -- > 2.47.2 > -- Jan Kara <jack@xxxxxxxx> SUSE Labs, CR