Re: Warning and BUG with btrfs and corrupted image

From: Chris Mason
Date: Thu Feb 05 2009 - 08:03:17 EST


On Thu, 2009-02-05 at 10:02 +0100, Pavel Machek wrote:
> > > > CONFIG_*_DEBUG means include *debug* code there to help developers,
> > > > including adding additional failure tests into the kernel. Besides,
> > > > which bit of "don't turn it on unless you are an XFS developer"
> > > > don't you understand?
> > >
> > > Yes, but DEBUG code is normally to help debugging, not to crash
> > > kernels.
> >
> > Crashing the kernel at exactly the point a problem is detected
> > is often the simplest way of debugging the problem.
> >
> > e.g. CONFIG_VM_DEBUG=y turns on VM_BUG_ON() which crashes the kernel
> > whenever it detects something wrong. Do I turn it on? Yes. Do i
>
> That's different. User is not supposed to be able to trigger
> VM_BUG_ON().
>
> > complain about it when I hit a VM_BUG_ON()? No, I report the
> > bug and move on. If you turn on a DEBUG option, then you are
> > asking the system to behave in a way useful to a developer,
> > not an end user. That includes panicing when something wrong
> > is detected.
>
> Imagine vm going panic() on mkdir("/lost+found")...

It is up to the XFS developers to decide what their debugging options
do.

The whole point of panicing is so that you can collect important
information about the system at the time of the error condition. When
this option is compiled on, panic on mkdir is exactly what they are
asking for.

If you don't want it, don't compile it in. The Kconfig text is very
clear.

-chris


--
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/