]> git.hungrycats.org Git - linux/commitdiff
[NET]: In sock_alloc_send_pskb, add __GFP_REPEAT when __GFP_WAIT.
authorDavid S. Miller <davem@nuts.ninka.net>
Sun, 20 Apr 2003 15:30:13 +0000 (08:30 -0700)
committerDavid S. Miller <davem@nuts.ninka.net>
Sun, 20 Apr 2003 15:30:13 +0000 (08:30 -0700)
net/core/sock.c

index 7e7bf7a9ad84107dbebd3f9b9dc79abf21a45159..8c85f0d79a86521a28afa58c294acd1682ebcf9c 100644 (file)
@@ -768,9 +768,14 @@ struct sk_buff *sock_alloc_send_pskb(struct sock *sk, unsigned long header_len,
                                     unsigned long data_len, int noblock, int *errcode)
 {
        struct sk_buff *skb;
+       unsigned int gfp_mask;
        long timeo;
        int err;
 
+       gfp_mask = sk->allocation;
+       if (gfp_mask & __GFP_WAIT)
+               gfp_mask |= __GFP_REPEAT;
+
        timeo = sock_sndtimeo(sk, noblock);
        while (1) {
                err = sock_error(sk);