Re: [PATCH net-next] bnx2x: dont use netdev_alloc_skb()

Tom Herbert
2010-10-12T05:04:28Z

On Mon, Oct 11, 2010 at 4:22 PM, Eric Dumazet <eric.dumazet@gmail.com> wrote:
> Le mardi 12 octobre 2010 à 01:03 +0200, Eric Dumazet a écrit :
>> netdev_alloc_skb() is a very wrong interface, really.
>>
>> We should remove/deprecate it.
>>
>> For multi queue devices, it makes more sense to allocate skb on local
>> node of the cpu handling RX interrupts. This allow each cpu to
>> manipulate its own slub/slab queues/structures without doing expensive
>> cross-node business.
>>
>> For non multi queue devices, IRQ affinity should be set so that a cpu
>> close to the device services interrupts. Even if not set, using
>> dev_alloc_skb() is faster.
>>
>> Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
>
> Or maybe revert :
>
> commit b30973f877fea1a3fb84e05599890fcc082a88e5
> Author: Christoph Hellwig <hch@lst.de>
> Date:   Wed Dec 6 20:32:36 2006 -0800
>

I second this revert. Node aware allocation by device's node makes
little sense on a multi-queue device and leads to mediocre
performance.

>    [PATCH] node-aware skb allocation
>
>    Node-aware allocation of skbs for the receive path.
>
>    Details:
>
>      - __alloc_skb gets a new node argument and cals the node-aware
>        slab functions with it.
>      - netdev_alloc_skb passed the node number it gets from dev_to_node
>        to it, everyone else passes -1 (any node)
>
>    Signed-off-by: Christoph Hellwig <hch@lst.de>
>    Cc: Christoph Lameter <clameter@engr.sgi.com>
>    Cc: "David S. Miller" <davem@davemloft.net>
>    Signed-off-by: Andrew Morton <akpm@osdl.org>
>
>
> Apparently, only Christoph and Andrew signed it.
>
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe netdev" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>