[cpp-threads] Comments on D2334

Paul E. McKenney paulmck at linux.vnet.ibm.com
Mon Jul 16 22:50:40 BST 2007


Hello!

Here are comments on D2334 at:

	http://wiki.dinkumware.com/twiki/pub/Wg21toronto/EvolutionWorkingGroup/D2334.html

						Thanx, Paul

o	1.10p2: This paragraph describes only atomics, correct?
	Non-atomic variables are subject to load/store tearing,
	so might see values other than those listed here.
	So I believe the modifier "atomic" needs to show up here,
	or perhaps "in absence of data races" or some such.

o	1.10p4: I agree with the note here: "We do not include "relaxed"
	atomic operations as "synchronization" operations though, like
	synchronization operations, they cannot contribute to data races."
	As noted in my prior note, N2324 needs to be adjusted to bring
	it in agreement.

o	1.10p7: This paragraph needs to be brought into agreement with
	1.10p4.  One way to do this would be as follows add "non-relaxed"
	as follows:

		An evaluation A that performs a release operation on
		an object M synchronizes with  an evaluation B that
		performs an acquire operation on M and reads either the
		value written by A or, if the following (in modification
		order) sequence of updates to M are non-relaxed atomic
		read-modify-write operations, a value written by one of
		these read-modify-write operations.

(Still need to look at the non-terminating loops and subsequent sections.)



More information about the cpp-threads mailing list