]> git.karo-electronics.de Git - karo-tx-linux.git/commit
[PATCH] fs/namei.c: Call to file_permission() under a spinlock in do_lookup_path()
authorTrond Myklebust <Trond.Myklebust@netapp.com>
Tue, 6 Jun 2006 15:19:35 +0000 (11:19 -0400)
committerChris Wright <chrisw@sous-sol.org>
Thu, 22 Jun 2006 19:16:12 +0000 (12:16 -0700)
commit9f631f4e9e409f76f8174e6c785056e9b2b89b42
tree498b306af00d0204d9a990d34937e724822c457a
parent2fb0b930b535b5e7ae8a5c8880d8ba941e508421
[PATCH] fs/namei.c: Call to file_permission() under a spinlock in do_lookup_path()

We're presently running lock_kernel() under fs_lock via nfs's ->permission
handler.  That's a ranking bug and sometimes a sleep-in-spinlock bug.  This
problem was introduced in the openat() patchset.

We should not need to hold the current->fs->lock for a codepath that doesn't
use current->fs.

[vsu@altlinux.ru: fix error path]
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: Al Viro <viro@ftp.linux.org.uk>
Signed-off-by: Sergey Vlasov <vsu@altlinux.ru>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
fs/namei.c