From: Easwar Hariharan <eahariha@linux.microsoft.com>
To: Praveen Kumar <kumarpraveen@linux.microsoft.com>,
lkp@intel.com, "K. Y. Srinivasan" <kys@microsoft.com>,
Haiyang Zhang <haiyangz@microsoft.com>,
Wei Liu <wei.liu@kernel.org>, Dexuan Cui <decui@microsoft.com>,
"open list:Hyper-V/Azure CORE AND DRIVERS"
<linux-hyperv@vger.kernel.org>,
open list <linux-kernel@vger.kernel.org>
Cc: eahariha@linux.microsoft.com,
Naman Jain <namjain@linux.microsoft.com>,
Shradha Gupta <shradhagupta@linux.microsoft.com>
Subject: Re: [RFC PATCH] drivers: hv: Convert open-coded timeouts to msecs_to_jiffies()
Date: Fri, 18 Oct 2024 15:49:54 -0700 [thread overview]
Message-ID: <2dff61bd-55d8-430f-9d92-6cbfe1bf6326@linux.microsoft.com> (raw)
In-Reply-To: <9f4baf14-8182-451d-9849-4326a783d5c1@linux.microsoft.com>
On 10/18/2024 12:54 AM, Praveen Kumar wrote:
> On 17-10-2024 04:07, Easwar Hariharan wrote:
>> We have several places where timeouts are open-coded as N (seconds) * HZ,
>> but best practice is to use msecs_to_jiffies(). Convert the timeouts to
>> make them HZ invariant.
>>> Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com>
>> ---
>> drivers/hv/hv_balloon.c | 9 +++++----
>> drivers/hv/hv_kvp.c | 4 ++--
>> drivers/hv/hv_snapshot.c | 6 ++++--
>> drivers/hv/vmbus_drv.c | 2 +-
>> 4 files changed, 12 insertions(+), 9 deletions(-)
>>
>> diff --git a/drivers/hv/hv_balloon.c b/drivers/hv/hv_balloon.c
>> index c38dcdfcb914d..3017d41f12681 100644
>> --- a/drivers/hv/hv_balloon.c
>> +++ b/drivers/hv/hv_balloon.c
>> @@ -756,7 +756,7 @@ static void hv_mem_hot_add(unsigned long start, unsigned long size,
>> * adding succeeded, it is ok to proceed even if the memory was
>> * not onlined in time.
>> */
>> - wait_for_completion_timeout(&dm_device.ol_waitevent, 5 * HZ);
>> + wait_for_completion_timeout(&dm_device.ol_waitevent, msecs_to_jiffies(5 * 1000));
>
> Is it correct to convert HZ to 1000 ?
> Also, how are you testing these changes ?
>
It's a conversion of milliseconds to seconds, rather than HZ to 1000. :)
msecs_to_jiffies() handles the conversion to jiffies with HZ. As Naman
mentioned, this could be equivalently written as 5 * MSECS_PER_SEC, and
would probably be more readable. On testing, this is only
compile-tested, and that's part of the reason why it's an RFC, since I'm
not 100% sure every one of these timeouts is measured in seconds. Hoping
for folks more familiar with the code to take a look.
Thanks,
Easwar
next prev parent reply other threads:[~2024-10-18 22:49 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-16 22:37 [RFC PATCH] drivers: hv: Convert open-coded timeouts to msecs_to_jiffies() Easwar Hariharan
2024-10-18 7:54 ` Praveen Kumar
2024-10-18 22:49 ` Easwar Hariharan [this message]
2024-10-19 4:59 ` Michael Kelley
2024-10-21 3:41 ` Easwar Hariharan
2024-10-21 4:17 ` Michael Kelley
2024-10-18 12:16 ` Naman Jain
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=2dff61bd-55d8-430f-9d92-6cbfe1bf6326@linux.microsoft.com \
--to=eahariha@linux.microsoft.com \
--cc=decui@microsoft.com \
--cc=haiyangz@microsoft.com \
--cc=kumarpraveen@linux.microsoft.com \
--cc=kys@microsoft.com \
--cc=linux-hyperv@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=lkp@intel.com \
--cc=namjain@linux.microsoft.com \
--cc=shradhagupta@linux.microsoft.com \
--cc=wei.liu@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.