[PATCH 01/01] arm: fix a preempt_count() corruption for CONFIG_PREEMPT=n

Patrik, Kluba pkluba at dension.com
Fri Jan 4 02:48:50 EST 2013

On Wed, 02 Jan 2013 16:41:00 -0800
Stephen Boyd <sboyd at codeaurora.org> wrote:

> On 12/18/12 16:01, Russell King - ARM Linux wrote:
> > On Tue, Dec 18, 2012 at 03:54:12PM -0800, Stephen Boyd wrote:
> >> Can you try this patch? I'll probably send a follow up patch that
> >> consolidates the duplicated preempt_decrement code into some
> >> assembly macro. We may also want to fix it up so that assembly
> >> stubs call into the preempt tracer. I'm not sure how that works
> >> right now with VFP.
> > This looks like a sensible fix to me - once tested of course.
> Kluba, did the patch work for you?

Sorry for being late, was on holiday. Yes, you were right,
CONFIG_DEBUG_PREEMPT (after breaking dependency on CONFIG_PREEMPT -
this is how I caught the exact place) and CONFIG_DEBUG_ATOMIC_SLEEP was
enabled due to bug hunting in own code (and found yet another at an
unexpected place). 
I have chosen #ifdef CONFIG_PREEMPT to match with assembly code, but
your solution seems more reasonable.


Patrik KLUBA
Software Developer at

DENSION Audio Systems Ltd.
H-1116 Budapest, Sztregova u. 1
Phone: +36 1 463 0470
Fax:   +36 1 463 0479
Web:   www.dension.com

More information about the linux-arm-kernel mailing list