Subject: Re: [PATCH v13 1/7] net: split off __napi_busy_poll from napi_busy_poll

From: Jakub Kicinski <[email-masked]>
Date: Wed, 31 May 2023 21:15:37 -0700

On Wed, 31 May 2023 12:16:50 -0700 Stefan Roesch wrote:
> > This will conflict with:
> >
> >     https://git.kernel.org/netdev/net-next/c/c857946a4e26
> >
> > :( Not sure what to do about it..
> >
> > Maybe we can merge a simpler version to unblock io-uring (just add
> > need_resched() to your loop_end callback and you'll get the same
> > behavior). Refactor in net-next in parallel. Then once trees converge
> > do simple a cleanup and call the _rcu version?  
> 
> Jakub, I can certainly call need_resched() in the loop_end callback, but
> isn't there a potential race? need_resched() in the loop_end callback
> might not return true, but the need_resched() call in napi_busy_poll
> does?

need_resched() is best effort. It gets added to potentially long
execution paths and loops. Extra single round thru the loop won't 
make a difference.