From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Message-Id: <20130518021655.743685399@goodmis.org> Date: Fri, 17 May 2013 22:17:24 -0400 From: Steven Rostedt To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: David Jeffery , Ian Kent Subject: [ 087/136 ] autofs - remove autofs dentry mount check References: <20130518021557.139113314@goodmis.org> Content-Disposition: inline; filename=0087-autofs-remove-autofs-dentry-mount-check.patch Sender: linux-kernel-owner@vger.kernel.org List-ID: 3.6.11.4 stable review patch. If anyone has any objections, please let me know. ------------------ From: David Jeffery [ Upstream commit ce8a5dbdf9e709bdaf4618d7ef8cceb91e8adc69 ] When checking if an autofs mount point is busy it isn't sufficient to only check if it's a mount point. For example, if the mount of an offset mountpoint in a tree is denied for this host by its export and the dentry becomes a process working directory the check incorrectly returns the mount as not in use at expire. This can happen since the default when mounting within a tree is nostrict, which means ingnore mount fails on mounts within the tree and continue. The nostrict option is meant to allow mounting in this case. Signed-off-by: David Jeffery Signed-off-by: Ian Kent Cc: stable@vger.kernel.org Signed-off-by: Linus Torvalds Signed-off-by: Steven Rostedt --- fs/autofs4/expire.c | 9 --------- 1 file changed, 9 deletions(-) diff --git a/fs/autofs4/expire.c b/fs/autofs4/expire.c index 842d000..c7ada0d 100644 --- a/fs/autofs4/expire.c +++ b/fs/autofs4/expire.c @@ -61,15 +61,6 @@ static int autofs4_mount_busy(struct vfsmount *mnt, struct dentry *dentry) /* This is an autofs submount, we can't expire it */ if (autofs_type_indirect(sbi->type)) goto done; - - /* - * Otherwise it's an offset mount and we need to check - * if we can umount its mount, if there is one. - */ - if (!d_mountpoint(path.dentry)) { - status = 0; - goto done; - } } /* Update the expiry counter if fs is busy */ -- 1.7.10.4