BUG in tcp.c ?

From: Rik van Riel (riel@conectiva.com.br)
Date: Fri Oct 06 2000 - 18:25:38 EDT

  • Next message: Philipp Rumpf: "Re: is there a limit on bss size?"

    Hi,

    I found the following lines in tcp.c, after trying to identify
    and track down what I thought to be an nbd bug...

    net/ipv4/tcp.c:

       1028 if (tcp_memory_free(sk))
       1029 skb = tcp_alloc_skb(sk, tmp, GFP_KERNEL)

    While this looks ok at first glance, it rather conflicts with
    the following lines of code from net/core/sock.c:

        785 skb = alloc_skb(try_size, sk->allocation);

    And from drivers/block/nbd.c:

        109 sock->sk->allocation = GFP_ATOMIC;
    ......
        121 if (send)
        122 result = sock_sendmsg(sock, &msg, size);

    Here we see that the nbd driver sets the allocation type to
    GFP_ATOMIC (and for a good reason), sock.c honours this field,
    but for some reason tcp.c doesn't ...

    Is this an actual bug, or am I overlooking something?

    regards,

    Rik

    --
    "What you're running that piece of shit Gnome?!?!"
           -- Miguel de Icaza, UKUUG 2000
    

    http://www.conectiva.com/ http://www.surriel.com/

    - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/



    This archive was generated by hypermail 2b29 : Fri Oct 06 2000 - 18:28:41 EDT