Thread (12 messages) flat view 12 messages, 11 authors, 2020-02-24

Re: [GIT] Networking

From: Geert Uytterhoeven <geert@linux-m68k.org>
Date: 2020-02-24 10:01:23
Also in: lkml

Hi Linus,

On Thu, Jun 25, 2015 at 1:38 AM Linus Torvalds
[off-list ref] wrote:
On Wed, Jun 24, 2015 at 6:39 AM, David Miller [off-list ref] wrote:
quoted
  git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git master
On the *other* side of the same conflict, I find an even more
offensive commit, namely commit 4cd7c9479aff ("IB/mad: Add support for
additional MAD info to/from drivers") which adds a BUG_ON() for a
sanity check, rather than just returning -EINVAL or something sane
like that.

I'm getting *real* tired of that BUG_ON() shit. I realize that
infiniband is a niche market, and those "commercial grade" niche
markets are more-than-used-to crap code and horrible hacks, but this
is still the kernel. We don't add random machine-killing debug checks
when it is *so* simple to just do

        if (WARN_ON_ONCE(..))
                return -EINVAL;

instead.
And if we follow that advice, friendly Greg will respond with:
"We really do not want WARN_ON() anywhere, as that causes systems with
 panic-on-warn to reboot."
https://lore.kernel.org/lkml/20191121135743.GA552517@kroah.com/ (local)
Killing the machine for idiotic things like that is truly offensive,
and truly horrible horrible code. Why do I keep on having to tell
people off for doing these things? Why do people keep thinking that
debugging-by-killing-the-machine is a good idea?

Either that BUG_ON() cannot possibly happen, in which case it should
damn well not exist in the first place. Or it's a valuable debug aid,
in which case it should damn well not be a BUG_ON. You can't have it
both ways.
Agreed.

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help