Re: [PATCH 2/2] vfsmount_lock / mnt_parent

From: Maneesh Soni
Date: Tue Jan 27 2004 - 09:16:05 EST


On Mon, Jan 26, 2004 at 11:11:31PM +0000, Mike Waychison wrote:
> The attached patch ensures that we grab vfsmount_lock when grabbing a
> reference to mnt_parent in follow_up and follow_dotdot.
>
> We also don't need to access ->mnt_parent in follow_mount and
> __follow_down to mntput because we already the parent pointer on the stack.
>
>

As pointed by Viro on IRC, there are other places where we access/use
mnt_parent without any protection. IIUC this needs either vfsmount_lock or the
namespace sem for protection. I did audit such places and hope not missed
anything else.

One such place is in autofs4's is_vfsmnt_tree_busy() routine. I hope Ian still
has the expire patch which corrects it. Didn't know why this patch never hit
lkml.

IMO do_kern_mount() probably don't need any protection for mnt_parent as it is
still initializing the vfsmount struct.

The other remaining place is m68k/atari/stram.c:swap_init() where it is
initializing a static vfsmount struct, so again IMO no lock required here.

Thanks,
Maneesh

--
Maneesh Soni
Linux Technology Center,
IBM Software Lab, Bangalore, India
email: maneesh@xxxxxxxxxx
Phone: 91-80-5044999 Fax: 91-80-5268553
T/L : 9243696
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/