Subject: Re: Is this skb recycle buffer helpful to improve Linux network stack performance?

From: Eric Dumazet <[email-masked]>
Date: Sun, 09 Oct 2005 00:22:24 +0200

LeoY a écrit :
> Hi Eric,
> 
> Thanks for your reply.
> 1. For the packet size, this idea is targeting some specific network 
> card driver and we assume all the packet size will not exceed 2KB.
> 2. Currently only Uni-Processor is considered(Hyper-threading is also 
> disabled), I will add spin lock part once it works on the UP.
> 

1) Even on Uni-Processor, you still need to protect against IRQS

2) The big cost of kmalloc()/kfree() come from the 
local_irq_save(flags)/local_irq_restore(flags)

Once you add them in your code, you will discover you gain nothing compared to 
kmalloc()/kfree() that already use a 'ring buffer' : More over, the slab 
implementation is designed to have separate 'ring buffer' (one for each cpu), 
so it is probably better than a 'central ring buffer'

Eric