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.