Re: [PATCH] checkpatch: Add warnings for use of mdelay()

From: Joe Perches
Date: Wed Jul 04 2018 - 14:31:07 EST


On Wed, 2018-07-04 at 11:18 -0700, Prakruthi Deepak Heragu wrote:
> mdelay() is not a preferred API to be used to insert delay in the kernel
> code unless the context is atomic. Instead, msleep() API can be used.
> This patch introduces this warning.

[]

> Signed-off-by: Israel Schlesinger <israels@xxxxxxxxxxxxxx>
> Signed-off-by: Stepan Moskovchenko <stepanm@xxxxxxxxxxxxxx>
> Signed-off-by: Prakruthi Deepak Heragu <pheragu@xxxxxxxxxxxxxx>

Really? 3 sign-offs for one trivial patch while
getting simple whitespace issues wrong?

> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
[]
> @@ -5572,6 +5572,12 @@ sub process {
> "Comparing get_jiffies_64() is almost always wrong; prefer time_after64, time_before64 and friends\n" . $herecurr);
> }
>
> +# check the patch for use of mdelay
> + if ($line =~ /\bmdelay\s*\(/) {
> + WARN("MDELAY",
> + "use of mdelay() found: msleep() is the preferred API.\n" . $herecurr );

No space after $herecurr

> + }
> +

NACK - I think this is unreasonable.

checkpatch is stupid and can only remain that way.

It cannot check for any particular use in atomic
that is appropriate and should not warn with a
false positive when the use is appropriate.

$ git grep -w mdelay | wc -l
2700

How many of those are correct?

If you want a check like this to be useful, write
something for coccinelle or smatch.