[PATCH 1/2] lockdep missing barrier()

Mathieu Desnoyers
2007-01-16T17:56:29Z

This patch adds a barrier() to lockdep.c lockdep_recursion updates. This
variable behaves like the preemption count and should therefore use similar
memory barriers.

This patch applies on 2.6.20-rc4-git3.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>

--- a/kernel/lockdep.c
+++ b/kernel/lockdep.c
@@ -166,12 +166,14 @@ static struct list_head chainhash_table[CHAINHASH_SIZE];
void lockdep_off(void)
{
current->lockdep_recursion++;
+ barrier();
}

EXPORT_SYMBOL(lockdep_off);

void lockdep_on(void)
{
+ barrier();
current->lockdep_recursion--;
}

--
OpenPGP public key: http://krystal.dyndns.org:8080/key/compudj.gpg
Key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68