Re: [PATCH/RFC] Deprecate BUG/BUG_ON in favour of BUG_AND_HALT/BUG_AND_HALT_ON

From: Paul Gortmaker
Date: Tue May 06 2014 - 10:34:53 EST


On 14-05-06 03:35 AM, Ingo Molnar wrote:
>
> * Richard Weinberger <richard.weinberger@xxxxxxxxx> wrote:
>
>> On Wed, Apr 30, 2014 at 5:03 PM, Paul Gortmaker
>> <paul.gortmaker@xxxxxxxxxxxxx> wrote:
>>> A long standing problem for us has been the misuse of BUG/BUG_ON.
>>> The typical misuse is someone only thinking of what represents
>>> a bug in their local code, and especially for people relatively
>>> new to Linux, starting out in device drivers, the appeal of using
>>> BUG w/o knowing what it really does is too great.
>>>

[...]

>>>
>>> +# Dont use BUG/BUG_ON; use WARN/WARN_ON or BUG_AND_HALT/BUG_AND_HALT_ON
>>> + if ($rawline =~ /^\+.*BUG\(/ || $rawline =~ /^\+.*BUG_ON\(/) {
>>> + my $herevet = "$here\n" . cat_vet($rawline) . "\n";
>>> + WARN("BUG/BUG_ON",
>>> + "Use of BUG/BUG_ON is deprecated. Use WARN/WARN_ON or BUG_AND_HALT/BUG_AND_HALT_ON\n" . $herevet);
>>> + }
>>> +
>>> # Check for FSF mailing addresses.
>>> if ($rawline =~ /\bwrite to the Free/i ||
>>> $rawline =~ /\b59\s+Temple\s+Pl/i ||
>>> --
>>
>> I like the idea but not the name.
>> What about DIE() and DIE_ON()?
>
> CRASH_ON() might be a suggestive name as well, as from the user's
> point of view we are crashing her system.

I'd considered HALT_AND_CATCH_FIRE_ON(...) but it was too much typing
and the PC police already forced us to remove that from the lpr driver
decades ago. So CRASH_ON works for me. If nobody dislikes the idea,
and we are only bikeshedding over the names, then that is a good thing.

I'll let the idea stew for another day or two and send a renamed v2.

Thanks,
Paul.
--

>
> Thanks,
>
> Ingo
>
--
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/