Re: [PATCH 02/25] vfs: Allow fsinfo() to query what's in an fs_context [ver #13]

From: David Howells
Date: Fri Jun 21 2019 - 09:12:59 EST


Christian Brauner <christian@xxxxxxxxxx> wrote:

> > static int vfs_fsinfo_fd(unsigned int fd, struct fsinfo_kparams *params)
> > {
> > struct fd f = fdget_raw(fd);
>
> You're using fdget_raw() which means you want to allow O_PATH fds but
> below you're checking whether the f_ops correspond to
> fscontext_fops. If it's an O_PATH

It can't be. The only way to get an fs_context fd is from fsopen() or
fspick() - neither of which allow O_PATH to be specified.

If you tried to go through /proc/pid/fd with open(O_PATH), I think you'd get
the symlink, not the target.

David