]> git.karo-electronics.de Git - karo-tx-linux.git/commit
dlm: always use GFP_NOFS
authorDavid Teigland <teigland@redhat.com>
Mon, 30 Nov 2009 22:34:43 +0000 (16:34 -0600)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 13 Aug 2010 20:20:20 +0000 (13:20 -0700)
commitd53f591280e8ad6a3164534db63b8c511154c704
treeb7cf0dce7ccbf5c66d84d6280a31263781d5f700
parentbd91f592633c1a3ec88ac2dd55b81cde45955b1d
dlm: always use GFP_NOFS

commit 573c24c4af6664ffcd9aa7ba617a35fde2b95534 upstream.

Replace all GFP_KERNEL and ls_allocation with GFP_NOFS.
ls_allocation would be GFP_KERNEL for userland lockspaces
and GFP_NOFS for file system lockspaces.

It was discovered that any lockspaces on the system can
affect all others by triggering memory reclaim in the
file system which could in turn call back into the dlm
to acquire locks, deadlocking dlm threads that were
shared by all lockspaces, like dlm_recv.

Signed-off-by: David Teigland <teigland@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
14 files changed:
fs/dlm/config.c
fs/dlm/debug_fs.c
fs/dlm/dir.c
fs/dlm/dlm_internal.h
fs/dlm/lock.c
fs/dlm/lockspace.c
fs/dlm/lowcomms.c
fs/dlm/member.c
fs/dlm/memory.c
fs/dlm/netlink.c
fs/dlm/plock.c
fs/dlm/rcom.c
fs/dlm/requestqueue.c
fs/dlm/user.c