On Fri, Feb 5, 2021 at 4:25 PM Miklos Szeredi <miklos@xxxxxxxxxx> wrote: > > On Fri, Feb 5, 2021 at 12:49 AM Vivek Goyal <vgoyal@xxxxxxxxxx> wrote: > > > > +int ovl_miscattr_set(struct dentry *dentry, struct miscattr *ma) > > > +{ > > > + struct inode *inode = d_inode(dentry); > > > + struct dentry *upperdentry; > > > + const struct cred *old_cred; > > > + int err; > > > + > > > + err = ovl_want_write(dentry); > > > + if (err) > > > + goto out; > > > + > > > + err = ovl_copy_up(dentry); > > > + if (!err) { > > > + upperdentry = ovl_dentry_upper(dentry); > > > + > > > + old_cred = ovl_override_creds(inode->i_sb); > > > + /* err = security_file_ioctl(real.file, cmd, arg); */ > > > > Is this an comment intended? > > I don't remember, but I guess not. Will fix and test. Sorry, yes, problem is that there's no file pointer available at this point. Fix is probably to introduce security_inode_miscattr_perm() hook. Thanks, Miklos