Re: [PATCH 11/11] checkpatch: Check for spin_is_locked

From: Joe Perches
Date: Fri Mar 16 2012 - 15:22:46 EST


On Fri, 2012-03-16 at 12:01 -0700, Andi Kleen wrote:
> From: Andi Kleen <ak@xxxxxxxxxxxxxxx>
> spin_is_locked is usually misused. In checkpatch.pl
> - warn when it is used at all
> - error out when it is asserted on free, because that's usually broken
[]
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
[]
> +# spin_is_locked is usually misused. warn about it.
> + if ($line =~ /\bspin_is_locked\s*\(/) {
> + # BUG_ON/WARN_ON(!spin_is_locked() is generally a bug
> + if ($line =~ /(BUG_ON|WARN_ON|ASSERT)\s*\(!spin_is_locked/) {
> + ERROR("ASSERT_SPIN_IS_LOCKED",
> + "Use lockdep_assert_held() instead of asserts on !spin_is_locked\n"
> + . $herecurr);
> + } else {
> + WARN("SPIN_IS_LOCKED",
> + "spin_is_locked is very rarely correctly used. Please reconsider\n"
> + . $herecurr)
> + }
> + }
> +

I suggest you use a single --ignore string of
"SPIN_IS_LOCKED" instead of different ones.

Grammar might be improved in the WARN. Maybe:
"Using spin_is_locked() is generally wrong. See [foo documentation]\n"

Also, like what was done for yield(), perhaps
some kernel-doc content would be useful.

See -next commit 8e3fabfde445a872c8aec2296846badf24d7c8b4


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/