On Sun, Mar 29, 2020 at 07:13:33PM +0200, Takashi Iwai wrote: > On Sun, 29 Mar 2020 14:11:29 +0200, George Spelvin wrote: >> On Sun, Mar 29, 2020 at 09:52:23AM +0200, Takashi Iwai wrote: >>> I thought the compiler already optimizes to the constant calculation >>> for the above case? >> >> It optimizes that if the entire argument, including "seconds", is >> a compile-time constant. >> >> However, given "msecs_to_jiffies(hdev->rpa_timeout * 1000);", >> the computatin is non-trivial. > > Fair enough. But it's still a question whether an open code X * HZ is > good at all... I'm sorry, I don't understand what you mean by "good at all" here. The value computed is exactly the same. msecs_to_jiffies(x) is basically (x * HZ + 999) / 1000, so msecs_to_jiffies(s * 1000) = (s * 1000 * HZ + 999) / 1000 = s * HZ + 999/1000 = s * HZ.