dead hvc_console with kdump kernel

Michael Ellerman michael at ellerman.id.au
Mon Mar 6 13:29:07 EST 2006


On Fri, 24 Feb 2006 07:41, Ryan Arnold wrote:
> If interrupts end up being disabled by the kexec call and you still need
> the console you could try to find a way to set hp->irq = NO_IRQ in this
> case such that the khvcd thread is continually rescheduled to poll the
> hypervisor buffer and never sleeps indefinitely, as via the interrupt
> driven method.

Still not sure what's going on here, some interrupt weirdness. This patch
serves as a workaround for the moment:

Index: kdump/drivers/char/hvc_console.c
===================================================================
--- kdump.orig/drivers/char/hvc_console.c       2006-03-06 12:19:42.000000000 +1100
+++ kdump/drivers/char/hvc_console.c    2006-03-06 12:22:32.000000000 +1100
@@ -591,10 +591,12 @@ static int hvc_poll(struct hvc_struct *h
        if (test_bit(TTY_THROTTLED, &tty->flags))
                goto throttled;

+#ifndef CONFIG_CRASH_DUMP
        /* If we aren't interrupt driven and aren't throttled, we always
         * request a reschedule
         */
        if (hp->irq == NO_IRQ)
+#endif
                poll_mask |= HVC_POLL_READ;

        /* Read data if any */



More information about the Linuxppc64-dev mailing list