Re: [PATCH] BUILD_BUG_ON sucks

From: Andrew Morton
Date: Sun Aug 17 2008 - 12:34:20 EST


On Sun, 17 Aug 2008 08:19:06 -0400 Theodore Tso <tytso@xxxxxxx> wrote:

> On Sat, Aug 16, 2008 at 10:46:58AM -0700, Andrew Morton wrote:
> > > what this code is supposed to do?
> > >
> > > journal = handle->h_transaction->t_journal;
> > > if (!journal_set_features(journal, 0, 0, JFS_FEATURE_INCOMPAT_REVOKE)) {
> > > J_ASSERT (!"Cannot set revoke feature!");
> > > ^^^^
> >
> > lol. It's been there since I merged ext3 in 2.4.15. Probably it was
> > in sct's ext3 patches in the RH kernel.
> >
> > Don't change it - it might be important!
>
> Heh! Well, it does the right thing, and doesn't take any extra text
> space assuming a vaguely competent C compiler optimizer. :-)
>
> I'm pretty sure that back in the 2.4 days, we didn't have BUG_ON. We
> should do a s/J_ASSERT/BUG_ON/g pass over all of fs/jbd and fs/jbd2.
> I'll submit patches for application when the 2.6.27 merge window opens
> up --- or is this an obvious enough and safe enough transformation
> that it will get accepted mainline at this point?
>

May as well get it over and done with.

We presently have a mix of J_ASSERT, J_ASSERT_JH and J_ASSERT_BH. That
will become BUG_ON, J_ASSERT_JH and J_ASSERT_BH. Which a is slightly
unpleasing loss of consistency but whatever.


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