Message ID | 20241210-converge-secs-to-jiffies-v3-2-ddfefd7e9f2a@linux.microsoft.com |
---|---|
State | New |
Headers | show |
Series | Converge on using secs_to_jiffies() | expand |
On 12/17/2024 9:33 AM, Julia Lawall wrote: > > > On Tue, 17 Dec 2024, Alexander Gordeev wrote: > >> On Tue, Dec 10, 2024 at 10:02:33PM +0000, Easwar Hariharan wrote: >> >> Hi Easwar, >> >>> This script finds and suggests conversions of timeout patterns that >>> result in seconds-denominated timeouts to use the new secs_to_jiffies() >>> API in include/linux/jiffies.h for better readability. >>> >>> Suggested-by: Anna-Maria Behnsen <anna-maria@linutronix.de> >>> Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com> >>> --- >>> scripts/coccinelle/misc/secs_to_jiffies.cocci | 22 ++++++++++++++++++++++ >>> 1 file changed, 22 insertions(+) >>> >>> diff --git a/scripts/coccinelle/misc/secs_to_jiffies.cocci b/scripts/coccinelle/misc/secs_to_jiffies.cocci >>> new file mode 100644 >>> index 0000000000000000000000000000000000000000..8bbb2884ea5db939c63fd4513cf5ca8c977aa8cb >>> --- /dev/null >>> +++ b/scripts/coccinelle/misc/secs_to_jiffies.cocci >>> @@ -0,0 +1,22 @@ >>> +// SPDX-License-Identifier: GPL-2.0-only >>> +/// >>> +/// Find usages of: >>> +/// - msecs_to_jiffies(value*1000) >>> +/// - msecs_to_jiffies(value*MSEC_PER_SEC) >>> +/// >>> +// Confidence: High >>> +// Copyright: (C) 2024 Easwar Hariharan, Microsoft >>> +// Keywords: secs, seconds, jiffies >>> +// >>> + >>> +virtual patch >>> + >>> +@depends on patch@ constant C; @@ >>> + >>> +- msecs_to_jiffies(C * 1000) >>> ++ secs_to_jiffies(C) >>> + >>> +@depends on patch@ constant C; @@ >>> + >>> +- msecs_to_jiffies(C * MSEC_PER_SEC) >>> ++ secs_to_jiffies(C) >> >> If you used this script only, then it did not seem to recognize line arch/s390/mm/cmm.c:207 >> >> mod_timer(&cmm_timer, jiffies + msecs_to_jiffies(cmm_timeout_seconds * MSEC_PER_SEC)); > > There is the requirement that C is a constant, and cmm_timeout_seconds is > not considered to be a constant, ie it is not all capital letters. > Indeed, it doesn't seem to be a constant at all. I don't know if the > requirement of being a comstant is really necessary. > > julia > >> >> Thanks! >> As the cover letter says, this is part 1. I intend to do further parts that address the cases where the multiplicand is an expression, as well as the cases where the timeout provided to msecs_to_jiffies() is denominated in seconds (i.e. ends in 000) Thanks, Easwar
diff --git a/scripts/coccinelle/misc/secs_to_jiffies.cocci b/scripts/coccinelle/misc/secs_to_jiffies.cocci new file mode 100644 index 0000000000000000000000000000000000000000..8bbb2884ea5db939c63fd4513cf5ca8c977aa8cb --- /dev/null +++ b/scripts/coccinelle/misc/secs_to_jiffies.cocci @@ -0,0 +1,22 @@ +// SPDX-License-Identifier: GPL-2.0-only +/// +/// Find usages of: +/// - msecs_to_jiffies(value*1000) +/// - msecs_to_jiffies(value*MSEC_PER_SEC) +/// +// Confidence: High +// Copyright: (C) 2024 Easwar Hariharan, Microsoft +// Keywords: secs, seconds, jiffies +// + +virtual patch + +@depends on patch@ constant C; @@ + +- msecs_to_jiffies(C * 1000) ++ secs_to_jiffies(C) + +@depends on patch@ constant C; @@ + +- msecs_to_jiffies(C * MSEC_PER_SEC) ++ secs_to_jiffies(C)
This script finds and suggests conversions of timeout patterns that result in seconds-denominated timeouts to use the new secs_to_jiffies() API in include/linux/jiffies.h for better readability. Suggested-by: Anna-Maria Behnsen <anna-maria@linutronix.de> Signed-off-by: Easwar Hariharan <eahariha@linux.microsoft.com> --- scripts/coccinelle/misc/secs_to_jiffies.cocci | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+)