On Mon, 2007-10-08 at 10:10 -0400, Steven Rostedt wrote:
> This issue has hit me enough times where I've played with a few other
> ideas. I just haven't had the time to finish them. The main problem is if
> the system locks up somewhere we have a lock held that keeps us from
> scheduling. Once that happens in -rt, we are as good as dead. Since you
> can't get much info out without a JTAG or some other mechanism.
>
> One thought I had was to create a small handler that could read the serial
> and place data into a buffer. This handler would be a IRQ_NODELAY, and it
> would wake up a serial thread to handle the data just like it would for
> normal serial output. But the serial thread would just read from the
> buffer instead of the serial itself. In the case of a sysrq key coming
> in, the IRQ_NODELAY handler would handle it.
>
Hi Steve,
What you describe is exactly what I did. The IRQF_NODELAY handler
just minimally checks to see if the character is a sysrq related one (or
KDB, if you have the KDB patches applied). If it is not, it puts the
character into a ring-buffer and wakes a (kthread-based) tasklet to do
the normal serial/tty rx path by processing the ring.
Hope that helps to clarify.
Regards,
-Greg
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]