[PATCH RFC] powerpc: Implement atomic64_t for 32-bit processors
Kumar Gala
galak at kernel.crashing.org
Sat Jun 13 00:04:52 EST 2009
On Jun 12, 2009, at 7:02 AM, Paul Mackerras wrote:
> 32-bit powerpc processors have no 64-bit atomic instructions, but we
> will
> need atomic64_t in order to support the perf_counter subsystem on 32-
> bit
> processors.
>
> This adds an implementation of 64-bit atomic operations using hashed
> spinlocks to provide atomicity. For each atomic operation, the
> address
> of the atomic64_t variable is hashed to an index into an array of 16
> spinlocks. That spinlock is taken (with interrupts disabled) around
> the
> operation, which can then be coded non-atomically within the lock.
>
> On UP, all the spinlock manipulation goes away and we simply disable
> interrupts around each operation. In fact gcc eliminates the whole
> atomic64_lock variable as well.
>
> Signed-off-by: Paul Mackerras <paulus at samba.org>
> ---
> Compile-tested only at this stage, which is why it's [RFC].
any reason not to make this lib/asm generic? Seems like it isn't ppc
specific.
- k
More information about the Linuxppc-dev
mailing list