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

printk in interrupt handlers?



Hi all,

I was under the impression that it is ok to use printk in interrupt
handlers. I tried to use printk in some scheduling code (which, if I
am not mistaken, is called on return from the local APIC timer
interrupt handler). Unfortunately, this deadlocks my system. A one
line message appears (recursive spin lock on CPU\1, with different
processes as current when it happens). I have compiled in deplock,
locking self-tests, and almost every other self-test found in the

Removing the printk statement from the scheduler completely fixes the
observed behavior, the system is usable and runs stable.

This has been observed on 2.6.20-rc7. Previously, on 2.6.9, we also
were never able to use printk inside scheduling code because it led to
lock-ups (without output).

I tried grep-ing through $SRC/Documentation for printk and also tried
to google for printk guidelines, but could not find anything. Is it
wrong to use printk inside scheduling code?

Thanks,
Björn

--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/