Hello, On Thu, Jun 15, 2017 at 11:17:14AM -0700, Shaohua Li wrote: > -static int kernfs_fill_super(struct super_block *sb, unsigned long magic) > +static int kernfs_fill_super(struct super_block *sb, unsigned long magic, > + bool enable_expop) Hmm... can't we make this a KERNFS_ROOT_* flag? > @@ -229,7 +287,8 @@ const void *kernfs_super_ns(struct super_block *sb) > */ > struct dentry *kernfs_mount_ns(struct file_system_type *fs_type, int flags, > struct kernfs_root *root, unsigned long magic, > - bool *new_sb_created, const void *ns) > + bool *new_sb_created, const void *ns, > + bool enable_expop) Ditto for other cases too. > --- a/include/linux/kernfs.h > +++ b/include/linux/kernfs.h > @@ -97,6 +97,7 @@ struct kernfs_elem_attr { > > /* represent a kernfs node */ > struct kernfs_node_id { > + /* the layout must match 'struct fid' */ > u32 ino; > u32 generation; > } __attribute__((packed)); Can we make it a union between struct fid and u64? Thanks. -- tejun