]> git.baikalelectronics.ru Git - kernel.git/commit
ocfs2: release page lock before calling ->page_mkwrite
authorMark Fasheh <mark.fasheh@oracle.com>
Thu, 19 Jul 2007 08:47:00 +0000 (01:47 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Thu, 19 Jul 2007 17:04:41 +0000 (10:04 -0700)
commitfe9de8b6433f044d8d1657ea3c1cb38f3046fa92
tree498bd41e9cf8795535f597696dd2c834d79ffb44
parent0c4d54c83a2afcc3c6bb3a73c621f25ec39f0f7b
ocfs2: release page lock before calling ->page_mkwrite

__do_fault() was calling ->page_mkwrite() with the page lock held, which
violates the locking rules for that callback.  Release and retake the page
lock around the callback to avoid deadlocking file systems which manually
take it.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
Cc: Nick Piggin <nickpiggin@yahoo.com.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/memory.c