|
From: Eric D. <eri...@gm...> - 2013-03-03 21:20:10
|
On Sun, 2013-03-03 at 20:21 +0100, Andi Kleen wrote: > > Alternative to 2) would be to use a generation id, incremented every > > time a napi used in spin polling enabled driver is dismantled (and freed > > after RCU grace period) > > > > And store in sockets not only the pointer to napi_struct, but the > > current generation id : If the generation id doesnt match, disable > > the spinpoll until next packet rebuilds the cache again. > > This would require rcu_read_lock, aka preempt off, during polling, right? > Of course, polling probably needs BH disabling as well to get the per napi lock |