summaryrefslogtreecommitdiff
path: root/net/sunrpc/auth_gss/gss_spkm3_mech.c
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2008-06-10 18:31:01 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2008-07-09 12:08:48 -0400
commit0f38b873aeaae698c3693748438547c8493165fb (patch)
treec858b2a08251c2f5792cf83582697dcd9909b7d8 /net/sunrpc/auth_gss/gss_spkm3_mech.c
parent7e5f6146609eb9134fac7d1b6bfee43df1732188 (diff)
downloadlwn-0f38b873aeaae698c3693748438547c8493165fb.tar.gz
lwn-0f38b873aeaae698c3693748438547c8493165fb.zip
SUNRPC: Use GFP_NOFS when allocating credentials
Since the credentials may be allocated during the call to rpc_new_task(), which again may be called by a memory allocator... Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'net/sunrpc/auth_gss/gss_spkm3_mech.c')
-rw-r--r--net/sunrpc/auth_gss/gss_spkm3_mech.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/net/sunrpc/auth_gss/gss_spkm3_mech.c b/net/sunrpc/auth_gss/gss_spkm3_mech.c
index 5deb4b6e4514..035e1dd6af1b 100644
--- a/net/sunrpc/auth_gss/gss_spkm3_mech.c
+++ b/net/sunrpc/auth_gss/gss_spkm3_mech.c
@@ -76,7 +76,7 @@ simple_get_netobj(const void *p, const void *end, struct xdr_netobj *res)
q = (const void *)((const char *)p + len);
if (unlikely(q > end || q < p))
return ERR_PTR(-EFAULT);
- res->data = kmemdup(p, len, GFP_KERNEL);
+ res->data = kmemdup(p, len, GFP_NOFS);
if (unlikely(res->data == NULL))
return ERR_PTR(-ENOMEM);
return q;
@@ -90,7 +90,7 @@ gss_import_sec_context_spkm3(const void *p, size_t len,
struct spkm3_ctx *ctx;
int version;
- if (!(ctx = kzalloc(sizeof(*ctx), GFP_KERNEL)))
+ if (!(ctx = kzalloc(sizeof(*ctx), GFP_NOFS)))
goto out_err;
p = simple_get_bytes(p, end, &version, sizeof(version));