diff options
author | David Teigland <teigland@redhat.com> | 2009-05-15 10:50:57 -0500 |
---|---|---|
committer | David Teigland <teigland@redhat.com> | 2009-05-15 11:24:59 -0500 |
commit | 748285ccf7ea76d3d76d0d5f2945ad6fb91f5329 (patch) | |
tree | aeb56a0e18c2f54acccb65e5b6e8ac63f53dfc44 /fs/dlm/lowcomms.c | |
parent | 391fbdc5d527149578490db2f1619951d91f3561 (diff) | |
download | op-kernel-dev-748285ccf7ea76d3d76d0d5f2945ad6fb91f5329.zip op-kernel-dev-748285ccf7ea76d3d76d0d5f2945ad6fb91f5329.tar.gz |
dlm: use more NOFS allocation
Change some GFP_KERNEL allocations to use either GFP_NOFS or
ls_allocation (when available) which the fs sets to GFP_NOFS.
The point is to prevent allocations from going back into the
cluster fs in places where that might lead to deadlock.
Signed-off-by: David Teigland <teigland@redhat.com>
Diffstat (limited to 'fs/dlm/lowcomms.c')
-rw-r--r-- | fs/dlm/lowcomms.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/dlm/lowcomms.c b/fs/dlm/lowcomms.c index 2559a97..cdb580a 100644 --- a/fs/dlm/lowcomms.c +++ b/fs/dlm/lowcomms.c @@ -500,7 +500,7 @@ static void process_sctp_notification(struct connection *con, return; } - new_con = nodeid2con(nodeid, GFP_KERNEL); + new_con = nodeid2con(nodeid, GFP_NOFS); if (!new_con) return; @@ -736,7 +736,7 @@ static int tcp_accept_from_sock(struct connection *con) * the same time and the connections cross on the wire. * In this case we store the incoming one in "othercon" */ - newcon = nodeid2con(nodeid, GFP_KERNEL); + newcon = nodeid2con(nodeid, GFP_NOFS); if (!newcon) { result = -ENOMEM; goto accept_err; @@ -746,7 +746,7 @@ static int tcp_accept_from_sock(struct connection *con) struct connection *othercon = newcon->othercon; if (!othercon) { - othercon = kmem_cache_zalloc(con_cache, GFP_KERNEL); + othercon = kmem_cache_zalloc(con_cache, GFP_NOFS); if (!othercon) { log_print("failed to allocate incoming socket"); mutex_unlock(&newcon->sock_mutex); |