diff options
author | Matt Fleming <matt@console-pimps.org> | 2009-06-13 22:23:27 +0100 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2009-06-15 00:31:17 +0900 |
commit | 0c50f6f38399685d0c9ef0f5ffd6c4955e31cb26 (patch) | |
tree | 7709bc7ab43998a08028b744ecc1a3626568bb11 /drivers/serial | |
parent | 3767f3f1ee11da55760616a2c68a09c02babdd9b (diff) | |
download | linux-0c50f6f38399685d0c9ef0f5ffd6c4955e31cb26.tar.gz linux-0c50f6f38399685d0c9ef0f5ffd6c4955e31cb26.tar.bz2 linux-0c50f6f38399685d0c9ef0f5ffd6c4955e31cb26.zip |
sh: Make the atomic functions safe for irqsoff tracing
The irqsoff tracer uses the atomic_* functions internally, but the
implementations of those functions in arch/sh/include/asm/atomic-irq.h
disable irqs to achieve atomicity. A continuous loop ensues where we
disable interrupts, trace the interrupt disabling, call atomic_*
functions, disable interrupts, trace the interrupt disabling, etc..
The simplest solution to all this is to just convert uses of
local_irq_save()/local_irq_restore() the raw_* equivalents because the
raw_* equivalents don't call trace_hardirqs_on()/trace_hardirqs_off().
Signed-off-by: Matt Fleming <matt@console-pimps.org>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'drivers/serial')
0 files changed, 0 insertions, 0 deletions