Re: [PATCH V2 1/1] lib/atomic64 using raw_spin_lock_irq[save|resotre] for atomicity
From: Thomas Gleixner <hidden>
Date: 2011-09-01 10:11:14
Also in:
lkml
From: Thomas Gleixner <hidden>
Date: 2011-09-01 10:11:14
Also in:
lkml
On Thu, 1 Sep 2011, Thomas Gleixner wrote:
On Thu, 1 Sep 2011, Shan Hai wrote:quoted
The spin_lock_irq[save|restore] could break the atomicity of the atomic64_* operations in the PREEMPT-RT configuration, because the spin_lock_irq[save|restore] themselves are preemptable in the PREEMPT-RT, using raw variant of the spin lock could provide the atomicity that atomic64_* need.Good catch. Queued for the next release.
Though the changelog is misleading. The reason is not that they are preemtible. The reason for your OOPs is that the sleeping locks are not IRQ safe. And your system simply deadlocked due to that. Thanks, tglx