From: raven@themaw.net Looking at the autofs4_may_umount I think I take the vfsmount_lock too late. --- 25-akpm/fs/autofs4/expire.c | 3 +-- 1 files changed, 1 insertion(+), 2 deletions(-) diff -puN fs/autofs4/expire.c~4-autofs4-260-expire-20040405-fix fs/autofs4/expire.c --- 25/fs/autofs4/expire.c~4-autofs4-260-expire-20040405-fix 2004-04-20 10:50:08.846256248 -0700 +++ 25-akpm/fs/autofs4/expire.c 2004-04-20 10:50:08.850255640 -0700 @@ -53,10 +53,9 @@ static int autofs4_may_umount(struct vfs int actual_refs; int minimum_refs; + spin_lock(&vfsmount_lock); actual_refs = atomic_read(&mnt->mnt_count); minimum_refs = 2; - - spin_lock(&vfsmount_lock); repeat: next = this_parent->mnt_mounts.next; resume: _