RE: Uses for memory barriers
From: David Schwartz
Date: Fri Sep 08 2006 - 01:49:52 EST
> Am I correct? Or are there some easily-explained situations where mb()
> really should be used for inter-CPU synchronization?
Consider when one CPU does the following:
while(!spinlock_acquire()) relax();
x=shared_value_protected_by_spinlock;
We need to make sure we do not *read* the protected values (say due to
prefetching) before other CPUs see our write that locks the spinlock.
DS
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/