On Thu, 2015-07-16 at 08:11 -0700, Paul E. McKenney wrote: > > So isync in lock in architecturally incorrect, despite being what > the > > architecture recommends using, yay ! > > Well, the architecture isn't expecting that crazies like myself would > want to have an unlock-lock provide ordering to some CPU not holding > the lock. :-/ Yes, isync in lock effectively allows any load or store before the lock to leak into the lock and get re-ordered with things in there. lwsync leaves us exposed to the re-order inside the LL/SC of a subsequent load. So to get the full barrier semantic, the only option is a full sync, either in lock or unlock. Instinctively I prefer in lock but there's an argument to have it in unlock so we can get rid of the iosync business. Ben. -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html