On 8/2/24 15:22, Olivier Langlois wrote:
On Fri, 2024-08-02 at 12:14 +0100, Pavel Begunkov wrote:
io_do_sqpoll_napi() returns 1 as long as there are napis in the list,
iow even if there is no activity it'll spin almost forever (60s is
forever) bypassing sq_thread_idle.
Let's not update sqt_spin here, if the user wants it to poll for
longer it can pass a larger SQPOLL idle timeout value.
fair enough...
in that case, maybe the man page SQPOLL idle timeout description should
include the mention that if NAPI busy loop is used, the idle timeout
should be at least as large as gro_flush_timeout to meet NAPI
requirement to not generate interrupts as described in
Would be great to have, I agree. We might also need to start
a tips and tricks document, not like many people are looking at
documentation.
Documentation/networking/napi.rst
section "Software IRQ coalescing"
I have discovered this fact the hard way by having spent days to figure
out how to do busy poll the right way.
this simple mention could save the trouble to many new users of the
feature.
I'll rework the patch and send a new version in the few days.
Awesome, thanks
--
Pavel Begunkov