]> rtime.felk.cvut.cz Git - socketcan-devel.git/commitdiff
Use sock_alloc_send_skb() instead of alloc_skb() to allocate a socket buffer,
authorthuermann <thuermann@030b6a49-0b11-0410-94ab-b0dab22257f2>
Mon, 22 Oct 2007 12:03:16 +0000 (12:03 +0000)
committerthuermann <thuermann@030b6a49-0b11-0410-94ab-b0dab22257f2>
Mon, 22 Oct 2007 12:03:16 +0000 (12:03 +0000)
as suggested by Marc Klein-Budde.

git-svn-id: svn://svn.berlios.de//socketcan/trunk@532 030b6a49-0b11-0410-94ab-b0dab22257f2

kernel/2.6/net/can/raw.c

index fc559585c53f7b046d6fa2901134acd8723b05a6..1707f005d5a8f33b25a848234ec39b5145128c44 100644 (file)
@@ -728,10 +728,11 @@ static int raw_sendmsg(struct kiocb *iocb, struct socket *sock,
                return -ENXIO;
        }
 
-       skb = alloc_skb(size, GFP_KERNEL);
+       skb = sock_alloc_send_skb(sk, size, msg->msg_flags & MSG_DONTWAIT,
+                                 &err);
        if (!skb) {
                dev_put(dev);
-               return -ENOMEM;
+               return err;
        }
 
        err = memcpy_fromiovec(skb_put(skb, size), msg->msg_iov, size);