[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Wed, 4 Apr 2018 08:10:44 +0000
From: "Dilger, Andreas" <andreas.dilger@...el.com>
To: NeilBrown <neilb@...e.com>
CC: James Simmons <jsimmons@...radead.org>,
"Drokin, Oleg" <oleg.drokin@...el.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
"Lustre Development List" <lustre-devel@...ts.lustre.org>
Subject: Re: [lustre-devel] [PATCH 11/17] staging: lustre: libcfs: discard
cfs_time_shift().
On Apr 2, 2018, at 16:26, NeilBrown <neilb@...e.com> wrote:
> On Mon, Apr 02 2018, Dilger, Andreas wrote:
>> On Mar 30, 2018, at 13:02, James Simmons <jsimmons@...radead.org> wrote:
>>>> This function simply multiplies by HZ and adds jiffies.
>>>> This is simple enough to be opencoded, and doing so
>>>> makes the code easier to read.
>>>>
>>>> Same for cfs_time_shift_64()
>>>
>>> Reviewed-by: James Simmons <jsimmons@...radead.org>
>>
>> Hmm, I thought we were trying to get rid of direct HZ usage in modules,
>> because of tickless systems, and move to e.g. msecs_to_jiffies() or similar?
>
> Are we? I hadn't heard but I could easily have missed it.
> Documentation/scheduler/completion.txt does say
>
> Timeouts are preferably calculated with
> msecs_to_jiffies() or usecs_to_jiffies().
>
> but is isn't clear what they are preferred to. Do you remember where
> you heard? or have a reference?
I thought the goal was to avoid hard-coding the HZ value so that kernels
could have variable clock rates in the future.
Cheers, Andreas
> $ git grep ' \* *HZ' |wc
> 2244 15679 170016
> $ git grep msecs_to_jiffies | wc
> 3301 13151 276725
>
> so msecs_to_jiffies is slightly more popular than "* HZ" (even if you add
> in "HZ *"). But that could just be a preference for using milliseconds
> over using seconds.
>
> $ git grep msecs_to_jiffies | grep -c '[0-9]000'
> 587
>
> so there are only 587 places that msecs_to_jiffies is clearly used in
> place of multiplying by HZ.
>
> If we were to pursue this, I would want to add secs_to_jiffies() to
> include/linux/jiffies.h and use that.
>
> Thanks,
> NeilBrown
> _______________________________________________
> lustre-devel mailing list
> lustre-devel@...ts.lustre.org
> http://lists.lustre.org/listinfo.cgi/lustre-devel-lustre.org
Cheers, Andreas
--
Andreas Dilger
Lustre Principal Architect
Intel Corporation
Powered by blists - more mailing lists