diff options
author | Eric Dumazet <edumazet@google.com> | 2015-12-16 02:33:39 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-12-16 07:27:45 +0300 |
commit | 6857a02af5386e9f5d11734363741dbe6b0a6959 (patch) | |
tree | 62071d5081591c410a678e65744c3f676e87651d /net | |
parent | 5cfe6d8adb57bd390bedc604be84cf8ff6808e1c (diff) | |
download | linux-6857a02af5386e9f5d11734363741dbe6b0a6959.tar.xz |
sctp: use GFP_KERNEL in sctp_init()
modules init functions being called from process context, we better
use GFP_KERNEL allocations to increase our chances to get these
high-order pages we want for SCTP hash tables.
This mostly matters if SCTP module is loaded once memory got fragmented.
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/sctp/protocol.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/sctp/protocol.c b/net/sctp/protocol.c index 3d9ea9a48289..6c2c0accc6a0 100644 --- a/net/sctp/protocol.c +++ b/net/sctp/protocol.c @@ -1419,7 +1419,7 @@ static __init int sctp_init(void) if ((sctp_assoc_hashsize > (64 * 1024)) && order > 0) continue; sctp_assoc_hashtable = (struct sctp_hashbucket *) - __get_free_pages(GFP_ATOMIC|__GFP_NOWARN, order); + __get_free_pages(GFP_KERNEL | __GFP_NOWARN, order); } while (!sctp_assoc_hashtable && --order > 0); if (!sctp_assoc_hashtable) { pr_err("Failed association hash alloc\n"); @@ -1452,7 +1452,7 @@ static __init int sctp_init(void) if ((sctp_port_hashsize > (64 * 1024)) && order > 0) continue; sctp_port_hashtable = (struct sctp_bind_hashbucket *) - __get_free_pages(GFP_ATOMIC|__GFP_NOWARN, order); + __get_free_pages(GFP_KERNEL | __GFP_NOWARN, order); } while (!sctp_port_hashtable && --order > 0); if (!sctp_port_hashtable) { pr_err("Failed bind hash alloc\n"); |