On Fri, Apr 15, 2022 at 3:43 PM Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: > > On Fri, Apr 15, 2022 at 2:32 PM Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote: > > > > We could create a new MM-developer-only assertion. Might even call it > > MM_BUG_ON(). With compile-time enablement but perhaps not a runtime > > switch. > > .. or VM_BUG_ON() could just become a WARN_ON_ONCE(). > > Which it should be anyway - since the code has to be written to > continue after that BUG_ON() anyway. > > There is absolutely _zero_ advantage to killing the machine. If you > want to be notified about "this must not happen", then WARN_ON_ONCE() > is the right thing to use. > > BUG_ON() is basically always the wrong thing to do. Not trying to start a meta discussion, just my two cents: This is a typical trolley problem: for the greater good, do we want to inflict more pain on a small group of users running experimental kernels so that they'd come back and yell at us quicker and louder? BUG_ONs are harmful but problems that trigger them would be presummingly less penetrating to the user base; on the other hand, from my experience working with some testers (ordinary users), they ignore WARN_ON_ONCEs until the kernel crashes. I'll let Justin chime in on Fedora's take on CONFIG_DEBUG_VM. I bet it's intended to crash the kernel.