Messages in this thread | | | Date | Tue, 23 Sep 2008 17:01:36 -0700 | From | "Paul E. McKenney" <> | Subject | Re: [ANNOUNCE] mdb: Merkey's Linux Kernel Debugger 2.6.27-rc4 released |
| |
On Thu, Aug 21, 2008 at 09:48:09AM -0700, Paul E. McKenney wrote: > On Thu, Aug 21, 2008 at 09:18:29AM -0700, Linus Torvalds wrote: > > > > > > On Thu, 21 Aug 2008, Linus Torvalds wrote: > > > > > > No, I haven't seen the drafts > > > > Ok, I have looked at the draft now, and I don't think I was overly > > pessimistic. > > > > If I read it right, all the memory ordering operations are defined for > > _single_ objects. So if you want to do the kernel kind of memory ordering > > where you specify ordering requirements independently of the actual > > accesses (perhaps because the accesses are in some helper function that > > doesn't care, but then you want to "finalize" the thing by stating a > > sequence point), it seems to be impossible with current drafts. > > You are looking for atomic_fence() on page 1168 (1154 virtual) of the > most recent draft. The current semantics are not correct, but this is > being worked. And yes, it does currently have a variable associated with > it, but it acts as a bare fence nevertheless. There is a proposal to > drop the variable. As you said in a previous email, design by committee.
And the proposal for variable-free memory-ordering operations was voted into the draft standard:
http://open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2731.html
Still not perfect, of course, but hopefully movement in the right direction.
Thanx, Paul
| |