Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp334689pxu; Fri, 11 Dec 2020 03:35:12 -0800 (PST) X-Google-Smtp-Source: ABdhPJwTnfU+mPvC+B74N4gGE6XGJEPtJUEawd/CeOeTzdo+SwBJIjD3lqdnjdH6YJDYHxRdPP1u X-Received: by 2002:a05:6402:1593:: with SMTP id c19mr11569196edv.269.1607686512497; Fri, 11 Dec 2020 03:35:12 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1607686512; cv=none; d=google.com; s=arc-20160816; b=wxtA3EDcYXbWuon5E7IFQPEQKmYpFk9A8mcchOzof7xdG6zYR+mMWkkdRn9LI18LUV 5JmmEZhZhBwgzSdQ6suAxlXqSPdG35dFlQ7V/iBgzraCUHv9xfPurRP+T0uZGMU9ke76 1W8SiMsPGwbmtPCKsM70qeMIfvWxKWITKzdMGk/4JVTGljMmCINnn1OoH/kmYluWlln9 loQl9XabTLhlZCq/r1zPVYBf073z2NAwClSYk1YA/rpuqaS4gPCrT926li7vZswZpPqW fupYFkBz7GGzqulfAM9R7Q8nrgirqBdfKd1etM6A8gNlRLqPeQb7XGcBbUOrKGUIdPEI aN1A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=J8P6F/MPRjXhmhfFtWhPhGD5sWaokR/6E1g8IVrlW+s=; b=gy3d7E1FcjgtviyKnaIVMMvNCuuz9Aec4dHIkam/Pae/8r4+xNkBzh89vn7YmH2OsJ s2zyydu1OBwbf/7edi2XlmyFLJTXnTDaZYmcA3iRKSlSWIXSemv4ZZKmGltr+2eyZi58 3Bx/Q/ZYVL8e2dmr9gAoVrwn4PDG+mkIvYmyYOX0oVtEp37urbIS0KmcoXFH6RFXfn0n atYFq//b0JN1Gwq/w1burXrFSzWmWwDOQAgeS+F4mdcQTZz+xaccPcXitV98Fhi9M7oM lDXekrhGj7UywQrvin60DcP9hYcaxu05ZgQw9WrgrMVjEWfts1Bm7meZkPlnSHEAEbV8 UrpQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=kKDsJfqo; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id m15si4766294edp.363.2020.12.11.03.34.50; Fri, 11 Dec 2020 03:35:12 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=kKDsJfqo; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2392070AbgLKCoy (ORCPT + 99 others); Thu, 10 Dec 2020 21:44:54 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:49394 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2391211AbgLKCos (ORCPT ); Thu, 10 Dec 2020 21:44:48 -0500 Received: from mail-ua1-x941.google.com (mail-ua1-x941.google.com [IPv6:2607:f8b0:4864:20::941]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B3C00C0613D3; Thu, 10 Dec 2020 18:44:08 -0800 (PST) Received: by mail-ua1-x941.google.com with SMTP id g3so2405245uae.7; Thu, 10 Dec 2020 18:44:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=J8P6F/MPRjXhmhfFtWhPhGD5sWaokR/6E1g8IVrlW+s=; b=kKDsJfqoP4lCYTd9mGSPprIvcgP8+Ivmik1WhwzOXvRzK+QJd1JrfRexmaQGDW3+tQ BYVw6CttsSTYRv3umN2I9VJrd78/somUxDt46XTi8P4BYVZNo4wruJONZ3scaLEPLdbs 09XgHyf1DE8zUw+xeUadADViNQE5WK9jaMmVKyy+5OwIZ7U2XF0qrq69r/KKvqHU3gie ZehdYdZCO5/yI3yxFu5JE3BRY4Zir8n/zgPM9Spy9g0KjZvYeYT1tdBfLqvTmFnvNwfZ IfNlU4FzpQ877jyjQKU00wq7Vh2i6ywDgdHI0IMNFtW04z6hQJBR7z2YX52v4PtKwP+q jcXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=J8P6F/MPRjXhmhfFtWhPhGD5sWaokR/6E1g8IVrlW+s=; b=Q9vEODlQxxdpni5SYC7VVsPPlPW06ApsIL3ZJZzwRLEZSwuJ7ym3CQNL2TuvX6hN5U M47Dqo0VynKsSgtI7CS5t8YErgnUFwoFhuI/2WKO/RLLPj6SlnZw8bB+pAI7GtF5eymW qH0LLrVRJe2WG6ZJnsFGkH7jSN23pxxlpDTEHvDE6Sn4srkNaRx647VmRebX33XRoc/G RJE9O3FdeZPDuWkcTYh+yzWstkFnQUiwjcSjH9/8JMhhQW5pcHNJR1gpPOXW353C3HqZ IcWpS1hXSgsVjhBN386El2IBwBXPh1Jdss28y+O2sHxQ8rstadxXSTG0oNco9XNoILx3 aI4g== X-Gm-Message-State: AOAM533mKyMYKr2uVsKxvDSM8+MblSf++TimEkXSg4JGKytbK5+cpxt5 DnBlZR0u3zSuk+goa1h5mc80nS6KQIah0Q4EFvs= X-Received: by 2002:ab0:6aa:: with SMTP id g39mr11277392uag.71.1607654647395; Thu, 10 Dec 2020 18:44:07 -0800 (PST) MIME-Version: 1.0 References: <1607592918-14356-1-git-send-email-yejune.deng@gmail.com> In-Reply-To: From: Yejune Deng Date: Fri, 11 Dec 2020 10:43:54 +0800 Message-ID: Subject: Re: [PATCH] net: core: fix msleep() is not accurate To: Eric Dumazet Cc: David Miller , Jakub Kicinski , Alexei Starovoitov , Andrii Nakryiko , Daniel Borkmann , Taehee Yoo , =?UTF-8?B?QmrDtnJuIFTDtnBlbA==?= , Cong Wang , Jiri Pirko , netdev , LKML Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Does anyone else have a different opinion? If not=EF=BC=8CI will adopt it a= nd resubmit. On Thu, Dec 10, 2020 at 6:19 PM Eric Dumazet wrote: > > On Thu, Dec 10, 2020 at 10:35 AM Yejune Deng wrot= e: > > > > 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 > > --- > > 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.