Arnd, Christoph,

On Thu, Mar 15, 2018 at 09:44:24PM +0100, Arnd Bergmann wrote:
> > diff --git a/drivers/base/devtmpfs.c b/drivers/base/devtmpfs.c
> > index 4afb04686c8e..5743f04014ca 100644
> > --- a/drivers/base/devtmpfs.c
> > +++ b/drivers/base/devtmpfs.c
> > @@ -387,7 +387,7 @@ static int devtmpfsd(void *p)
> >         if (*err)
> >                 goto out;
> >         sys_chdir("/.."); /* will traverse into overmounted root */
> > -       sys_chroot(".");
> > +       ksys_chroot(".");
> >         complete(&setup_done);
> >         while (1) {
> >                 spin_lock(&req_lock);
> 
> Could this be done using kern_path()/set_fs_root() instead so we
> avoid the __user pointer?
> 
>        Arnd

On Fri, Mar 16, 2018 at 01:49:41AM -0700, Christoph Hellwig wrote:
> Agreed.  Especially as we don't need any of the permission checks here.

Thanks for your input. As re-working this code to use the vfs-internal
helpers would probably mean that the syscall-cleanup code has to wait
for another release cycle, I propose to address this issue with the
following paragraph in the commit message:

        In the near future, the fs-external callers of ksys_chroot() should be
        converted to use kern_path()/set_fs_root() directly. Then ksys_chroot()
        can be moved within sys_chroot() again.

Thanks,
        Dominik

Reply via email to