Is it possible to implement interrupt time printk's reliably?
From: Jon Smirl
Date: Thu May 06 2004 - 21:55:11 EST
Problem:
1) Some operations on graphics cards cannot be stopped once they are started.
It's not reasonable to turn interrupts off around these operations.
2) Kernel developers want console printk's to work from interrupt routines.
How do you fix this situation?
1) Grpahics driver has started non-restartable operation. For example
transferring a bitmap. This is not an automatic DMA operation, CPU involvement
is needed.
2) Interrupt happens
3) Printk happens from interrupt.
Now we're stuck. The graphics chip is in a non-interruptible state and printk
wants to use it.
We need some mechanism to get back to the driver code and finish the
non-restartable operation before the printk can be allowed to proceed.
Another solution also comes to mind. Mark the appropriate sections in the video
driver with BEGIN/END_INT_PRINTK. Then add a kernel build option to convert
these macros to en/disable interrupts if interrupt time printk's are allowed.
Would it be acceptable to disable interrupts for signifcant time on a
development kernel where the developer is printk'ing from interrupts?
=====
Jon Smirl
jonsmirl@xxxxxxxxx
__________________________________
Do you Yahoo!?
Win a $20,000 Career Makeover at Yahoo! HotJobs
http://hotjobs.sweepstakes.yahoo.com/careermakeover
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/