Re: stack overflow on Sparc64

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On Fri, 20 Jun 2008, David Miller wrote:

From: Mikulas Patocka <mpatocka@xxxxxxxxxx>
Date: Fri, 20 Jun 2008 11:47:12 -0400 (EDT)

I took another few traces (to track the whole stack content) and there is
another problem: nested interrupts. Does Sparc64 limit them somehow?

Two levels should be the deepest you will ever see, and this is
equivalent to what you get on other platforms.

Are you sure? What about this:
ide-io.c:ide_intr
        if (drive->unmask)
                local_irq_enable_in_hardirq();

or this:
kernel/irq/handle.c:handle_IRQ_event
        if (!(action->flags & IRQF_DISABLED))
                local_irq_enable_in_hardirq();


--- how is number of nested interrupts here supposed to be limited?

If these things are not limited, you get at most as many nested handlers as there are hardware interrupts, which means crash.

Mikulas

That path occurs when softirq processing re-enabled HW interrupts when
returning from the top-level interrupt.
--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Development]     [DCCP]     [Linux ARM Development]     [Linux]     [Photo]     [Yosemite Help]     [Linux ARM Kernel]     [Linux SCSI]     [Linux x86_64]     [Linux Hams]

  Powered by Linux