On Tue, Jul 14, 2015 at 01:51:46PM +0100, Will Deacon wrote: > Hi Paul, > > On Tue, Jul 14, 2015 at 01:45:40PM +0100, Paul E. McKenney wrote: > > On Tue, Jul 14, 2015 at 11:04:29AM +0100, Will Deacon wrote: > > > Given that RCU is currently the only user of this barrier, how would you > > > feel about making the barrier local to RCU and not part of the general > > > memory-barrier API? > > > > In theory, no objection. Your thought is to leave the definitions where > > they are, mark them as being used only by RCU, and removing mention from > > memory-barriers.txt? Or did you have something else in mind? > > Actually, I was thinking of defining them in an RCU header file with an > #ifdef CONFIG_POWERPC for the smb_mb() version. Then you could have a big > comment describing the semantics, or put that in an RCU Documentation file > instead of memory-barriers.txt. > > That *should* then mean we notice anybody else trying to use the barrier, > because they'd need to send patches to either add something equivalent > or move the definition out again. My concern with this approach is that someone putting together a new architecture might miss this. That said, this approach certainly would work for the current architectures. > > > My main reason for proposing its removal is because I don't want to see > > > it being used (incorrectly) all over the place to order the new RELEASE > > > and ACQUIRE operations I posted separately, at which point we have to try > > > fixing up all the callers or retrofitting some semantics. It doesn't help > > > that memory-barriers.txt lumps things like LOCK and ACQUIRE together, > > > whereas this barrier is currently only intended to be used in conjunction > > > with the former. > > > > Heh! That lumping was considered to be a feature at the time. ;-) > > Oh, I'm sure it was added with good intentions! And we all know which road is paved with good intentions! ;-) Thanx, Paul -- 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