On Tue, 9 May 2006 20:57:01 +0200
Heiko J Schick <[email protected]> wrote:
> On 09.05.2006, at 18:49, Michael S. Tsirkin wrote:
>
> >> The trivial way to do it would be to use the same idea as the current
> >> ehca driver: just create a thread for receive CQ events and a thread
> >> for send CQ events, and defer CQ polling into those two threads.
> >
> > For RX, isn't this basically what NAPI is doing?
> > Only NAPI seems better, avoiding interrupts completely and avoiding
> > latency hit
> > by only getting triggered on high load ...
>
> Does NAPI schedules CQ callbacks to different CPUs or stays the callback
> (handling of data, etc.) on the same CPU where the interrupt came in?
>
NAPI runs callback on same cpu that called netif_rx_schedule.
This has benefit of cache location and reduces locking overhead.