On Thu, Jun 19, 2014 at 7:00 PM, Greg KH gregkh@linuxfoundation.org wrote:
BUG_ON(f1->context != f2->context);
Nice, you just crashed the kernel, making it impossible to debug or recover :(
agreed, that should probably be 'if (WARN_ON(...)) return NULL;'
(but at least I wouldn't expect to hit that under console_lock so you should at least see the last N lines of the backtrace on the screen ;-))
Lots of devices don't have console screens :)
Aside: This is a pet peeve of mine and recently I've switched to rejecting all patch that have a BUG_ON, period. Except when you can prove that the kernel will die in the next few lines and there's nothing you can do about it a WARN_ON is always better - I've wasted _way_ too much time debugging hard hangs because such a "benign" BUG_ON ended up eating my irq handler or a spinlock required by such. Or some other nonsense that makes debugging a royal pita, especially if your remote debugger consists of a frustrated users staring at a hung machine.
</rant>
Cheers, Daniel