On Tue, 2015-11-17 at 17:14 +0200, Eliezer Tamir wrote:
> On 17/11/2015 15:57, Eric Dumazet wrote:
> > Instead of having to implement complex ndo_busy_poll() method,
> > drivers can simply rely on NAPI poll logic.
> 
> I really like where you are going with this series.
> 
> ...
> 
> > We could go one step further, and make busy polling
> > available for all NAPI drivers, but this would require
> > that all netif_napi_del() calls are done in process context
> > so that we can call synchronize_rcu().
> > Full audit would be required.
> > 
> > Before this is done, a driver still needs to call :
> > 
> > - skb_mark_napi_id() for each skb provided to the stack, although we can
> >   easily do this directly in core networking stack in a future patch.
> > 
> > - napi_hash_add() and napi_hash_del() to allocate/free a napi_id per napi.
> > 
> > - Make sure RCU grace period is respected after napi_hash_del() before
> >   memory containing napi structure is freed.
> 
> Can we move all of these into the NAPI infrastructure?
> Maybe hash add/del can be inside netif_napi_add/del.
> Some way to force the right RCU behavior, and busy polling is
> completely driver-agnostic, which IMHO outweighs the small gains
> you can have by micro-optimizing ndo_busy_poll.

This is exactly what I suggested in the changelog ;)




--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to