Re: [PATCH] namespace.c: fix bind mount from foreign namespace

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> static int do_loopback(struct nameidata *nd, char *old_name, int recurse)
> {
>         struct nameidata old_nd;
>         struct vfsmount *mnt = NULL;
> 	/* no changes of mnt */
> 	err = -EINVAL;
> 	if (check_mnt(nd->mnt) && ... ) {
> 		/* assigns to mnt */
> 	}
> 	if (mnt) {
> 		/* assigns to err */
> 	}
>         up_write(&current->namespace->sem);
>         path_release(&old_nd);
>         return err;
> }
> 
> Care to explain how that would not give -EINVAL?

Yeah, but that check_mnt() checks the _destination_ of the bind not
the source.  The source is only checked for recursive mounts,
presumably because the source namespace is not locked, and so can
change.

Miklos
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux