Does anyone else have a different opinion? If not,I will adopt it and resubmit.
On Thu, Dec 10, 2020 at 6:19 PM Eric Dumazet <eduma...@google.com> wrote: > > On Thu, Dec 10, 2020 at 10:35 AM Yejune Deng <yejune.d...@gmail.com> wrote: > > > > See Documentation/timers/timers-howto.rst, msleep() is not > > for (1ms - 20ms), There is a more advanced API is used. > > > > Signed-off-by: Yejune Deng <yejune.d...@gmail.com> > > --- > > net/core/dev.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/net/core/dev.c b/net/core/dev.c > > index d33099f..6e83ee03 100644 > > --- a/net/core/dev.c > > +++ b/net/core/dev.c > > @@ -6726,9 +6726,9 @@ void napi_disable(struct napi_struct *n) > > set_bit(NAPI_STATE_DISABLE, &n->state); > > > > while (test_and_set_bit(NAPI_STATE_SCHED, &n->state)) > > - msleep(1); > > + fsleep(1000); > > while (test_and_set_bit(NAPI_STATE_NPSVC, &n->state)) > > - msleep(1); > > + fsleep(1000); > > > > I would prefer explicit usleep_range(). > > fsleep() is not common in the kernel, I had to go to its definition. > > I would argue that we should use usleep_range(10, 200) to have an > opportunity to spend less time in napi_disable() in some cases.