perf events ring buffer memory barrier on powerpc
Peter Zijlstra
peterz at infradead.org
Sat Nov 2 03:18:19 EST 2013
On Wed, Oct 30, 2013 at 11:40:15PM -0700, Paul E. McKenney wrote:
> The dependency you are talking about is via the "if" statement?
> Even C/C++11 is not required to respect control dependencies.
>
> This one is a bit annoying. The x86 TSO means that you really only
> need barrier(), ARM (recent ARM, anyway) and Power could use a weaker
> barrier, and so on -- but smp_mb() emits a full barrier.
>
> Perhaps a new smp_tmb() for TSO semantics, where reads are ordered
> before reads, writes before writes, and reads before writes, but not
> writes before reads? Another approach would be to define a per-arch
> barrier for this particular case.
Supposing a sane language where we can rely on control flow; would that
change the story?
I'm afraid I'm now terminally confused between actual proper memory
model issues and fucked compilers.
More information about the Linuxppc-dev
mailing list