lkml.org 
[lkml]   [2006]   [Jan]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    SubjectRe: oops pauser.
    From
    Date
    Some comments:
    1. I think this is a good idea, since serial consoles can also change
    timings. I have seen several race conditions where the problem goes
    away once I add a serial console.
    2. Should this be a separate debugging option?
    3. Shouldn't you have KERN____ in your printk statements?
    4. Wouldn't printing out the message every second make the oops scroll
    off the screen, defeating the purpose of the patch?

    Avishay Traeger
    http://www.fsl.cs.sunysb.edu/~avishay/

    On Wed, 2006-01-04 at 23:52 -0500, Dave Jones wrote:
    > In my quest to get better debug data from users in Fedora bug reports,
    > I came up with this patch. A majority of users don't have serial
    > consoles, so when an oops scrolls off the top of the screen,
    > and locks up, they usually end up reporting a 2nd (or later) oops
    > that isn't particularly helpful (or worse, some inconsequential
    > info like 'sleeping whilst atomic' warnings)
    >
    > With this patch, if we oops, there's a pause for a two minutes..
    > which hopefully gives people enough time to grab a digital camera
    > to take a screenshot of the oops.
    >
    > It has an on-screen timer so the user knows what's going on,
    > (and that it's going to come back to life [maybe] after the oops).
    >
    > The one case this doesn't catch is the problem of oopses whilst
    > in X. Previously a non-fatal oops would stall X momentarily,
    > and then things continue. Now those cases will lock up completely
    > for two minutes. Future patches could add some additional feedback
    > during this 'stall' such as the blinky keyboard leds, or periodic speaker beeps.
    >
    > Signed-off-by: Dave Jones <davej@redhat.com>
    >
    > --- vanilla/arch/i386/kernel/traps.c 2006-01-02 22:21:10.000000000 -0500
    > +++ linux-2.6.15/arch/i386/kernel/traps.c 2006-01-04 23:42:46.000000000 -0500
    > @@ -256,6 +271,15 @@ void show_registers(struct pt_regs *regs
    > }
    > }
    > printk("\n");
    > + {
    > + int i;
    > + for (i=120;i>0;i--) {
    > + mdelay(1000);
    > + touch_nmi_watchdog();
    > + printk("Continuing in %d seconds. \r", i);
    > + }
    > + printk("\n");
    > + }
    > }
    >
    > static void handle_BUG(struct pt_regs *regs)
    > -
    > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    > the body of a message to majordomo@vger.kernel.org
    > More majordomo info at http://vger.kernel.org/majordomo-info.html
    > Please read the FAQ at http://www.tux.org/lkml/

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2006-01-05 15:01    [W:0.025 / U:0.228 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site