sctp: really allow using GFP_KERNEL on sctp_packet_transmit
authorMarcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Tue, 29 Mar 2016 13:41:03 +0000 (10:41 -0300)
committerDavid S. Miller <davem@davemloft.net>
Wed, 30 Mar 2016 19:41:22 +0000 (15:41 -0400)
Somehow my patch for commit cea8768f333e ("sctp: allow
sctp_transmit_packet and others to use gfp") missed two important
chunks, which are now added.

Fixes: cea8768f333e ("sctp: allow sctp_transmit_packet and others to use gfp")
Signed-off-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Acked-By: Neil Horman <nhorman@tuxdriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/sctp/output.c

index 736c004..9774535 100644 (file)
@@ -401,7 +401,7 @@ int sctp_packet_transmit(struct sctp_packet *packet, gfp_t gfp)
        sk = chunk->skb->sk;
 
        /* Allocate the new skb.  */
-       nskb = alloc_skb(packet->size + MAX_HEADER, GFP_ATOMIC);
+       nskb = alloc_skb(packet->size + MAX_HEADER, gfp);
        if (!nskb)
                goto nomem;
 
@@ -523,8 +523,8 @@ int sctp_packet_transmit(struct sctp_packet *packet, gfp_t gfp)
         */
        if (auth)
                sctp_auth_calculate_hmac(asoc, nskb,
-                                       (struct sctp_auth_chunk *)auth,
-                                       GFP_ATOMIC);
+                                        (struct sctp_auth_chunk *)auth,
+                                        gfp);
 
        /* 2) Calculate the Adler-32 checksum of the whole packet,
         *    including the SCTP common header and all the