[PATCH] gianfar: Add I/O barriers when touching buffer descriptor ownership.

Segher Boessenkool segher at kernel.crashing.org
Thu May 3 04:05:43 EST 2007


>> AFAICS you need stronger barriers though; {w,r,}mb(),
>> to prevent _any_ reordering of those memory accesses,
>> not just the compiler-generated ones.
>
> My impression was that the eieio used by iobarrier would be sufficient 
> for that, as we're not trying to synchronize between accesses to 
> different types of memory.  Is sync really required here?

For accesses to main system memory, eieio only orders
writes, not reads, so iobarrier_r() doesn't do what
you want; and iobarrier_w() isn't meant to be used for
main memory access ordering either.

Also, it is better to not use powerpc-specific interfaces
in a device driver if you don't have a strong reason to.


Segher




More information about the Linuxppc-dev mailing list