Re: BUG_ON() in workingset_node_shadows_dec() triggers

From: Linus Torvalds
Date: Wed Oct 05 2016 - 15:19:01 EST

On Wed, Oct 5, 2016 at 12:06 PM, Willy Tarreau <w@xxxxxx> wrote:
> I have the same doubts, so at least I would not want to run the "sed"
> immediately, at least to keep the initial intent. But I think everyone
> is right in is own yard when he puts a BUG_ON() when he doesn't know
> how to handle an unsafe situation, he's wrong from a global perspective.

Yes. And as you say, even when the developer might be right in sone
situations, you'd easily still be wrong for the same code in some
other situation.

Quite frankly, I wouldn't do a sed-script pass to actually change
existing users. I'd just change how the BUG() implementation itself
works. Not make it a direct WARN_ON(), but perhaps something like

- use WARN_ON() with a global rate limiter (we do *not* want BUG
cascades, but re-enable the warning after a few minutes)

- have some kernel command line option for the server people to allow
them to just force a reboot for it


Anybody want to play with it?