[PATCH] ARM: BUG() dies silently

Ramirez Luna, Omar omar.ramirez at ti.com
Tue Apr 5 12:02:56 EDT 2011


On Tue, Apr 5, 2011 at 12:46 AM, Simon Glass <sjg at chromium.org> wrote:
> On Mon, Apr 4, 2011 at 7:29 PM, Ramirez Luna, Omar <omar.ramirez at ti.com> wrote:
> ...
>> I am using CONFIG_BUG=y, however I don't have CONFIG_DEBUG_BUGVERBOSE
>> and hence I fall into the part which doesn't print the file and the
>> line where the BUG was found.
>> With Simon's patch if my .config had:
>> CONFIG_GENERIC_BUG is not set
> In this case the patch is like a nop.
>> I would fall into the same BUG definition that is causing issues:
>> #define BUG()           do { *(int *)0 = 0; } while (1)
>> OTOH, is not like "Use generic BUG() handler" gives the choice of
>> removing GENERIC_BUG given that it is not prompted in menuconfig and
>> auto selected, if this is the intention is there any reason to keep
>> the #else part of /* not CONFIG_GENERIC_BUG */? there is no way we can
>> use it with this patch, right?
> Well, er, the intention is that you use the patch. I kept the old code
> around since people can then simply change the Kconfig option and be
> back where they were, as indeed you have. I would be happy to remove
> the old behavior, but I was concerned about a possible roasting in
> this forum. Changing long-established behavior is sometimes tricky.

Yes, but you can't change the Kconfig because it is not prompted with
your patch, if that was the intention then an option to de/select
GENERIC_BUG or not is needed:

@@ -204,6 +204,10 @@ config MMU
          Select if you want MMU-based virtualised addressing space
          support by paged memory management. If unsure, say 'Y'.

+       bool "Generic BUG"
+       default y
+       depends on BUG



More information about the linux-arm-kernel mailing list