RE: [PATCH net-next v2 0/5] implement kthread based napi poll
From: David Laight <hidden>
Date: 2020-10-03 10:58:18
From: Wei Wang
Sent: 02 October 2020 23:25 The idea of moving the napi poll process out of softirq context to a kernel thread based context is not new. Paolo Abeni and Hannes Frederic Sowa have proposed patches to move napi poll to kthread back in 2016. And Felix Fietkau has also proposed patches of similar ideas to use workqueue to process napi poll just a few weeks ago.
I didn't spot anything that makes this continue to work?
static inline bool netdev_xmit_more(void)
{
return __this_cpu_read(softnet_data.xmit.more);
}
I assume it normally relies on the softint code running with
pre-emption disabled.
(It also needs a level of indirection.
xmit.more is only set if more packets are queued when the tx
call is done.
I've seen a workload that manages to repeatedly add an extra
packet while the tx setup is in progress.)
David
-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)