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