From: Paul Mackerras <paulus@samba.org>
To: Linus Torvalds <torvalds@transmeta.com>
Cc: <linux-kernel@vger.kernel.org>
Subject: Re: [Lse-tech] Re: RFC: patch to allow lock-free traversal of lists with insertion
Date: Sat, 13 Oct 2001 12:49:01 +1000 (EST) [thread overview]
Message-ID: <15303.43933.96690.366643@cargo.ozlabs.ibm.com> (raw)
In-Reply-To: <Pine.LNX.4.33.0110121903031.8148-100000@penguin.transmeta.com>
In-Reply-To: <Pine.LNX.4.40.0110121834150.1505-100000@blue1.dev.mcafeelabs.com> <Pine.LNX.4.33.0110121903031.8148-100000@penguin.transmeta.com>
Linus Torvalds writes:
> On Fri, 12 Oct 2001, Davide Libenzi wrote:
> >
> > The problem is that even if cpu1 schedule the load of p before the
> > load of *p and cpu2 does a = 1; wmb(); p = &a; , it could happen that
> > even if from cpu2 the invalidation stream exit in order, cpu1 could see
> > the value of p before the value of *p due a reordering done by the
> > cache controller delivering the stream to cpu1.
>
> Umm - if that happens, your cache controller isn't honouring the wmb(),
> and you have problems quite regardless of any load ordering on _any_ CPU.
Well yes. But this is what happens on alpha apparently.
On alpha, it seems that the wmb only has an effect on the cache of the
processor doing the writes, it doesn't affect any other caches. The
wmb ensures that the invalidates from the two writes go out onto the
bus in the right order, but the wmb itself doesn't go on the bus.
Thus the invalidates can get processed in the reverse order by a
receiving cache. I presume that an rmb() on alpha must wait for all
outstanding invalidates to be processed by the cache. But I'm not an
expert on the alpha by any means.
Paul.
next prev parent reply other threads:[~2001-10-13 4:51 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-10-10 15:24 Paul McKenney
2001-10-10 16:58 ` Andrea Arcangeli
2001-10-10 17:25 ` Linus Torvalds
2001-10-12 5:06 ` Rusty Russell
2001-10-12 16:28 ` Linus Torvalds
2001-10-12 19:50 ` Al Dunsmuir
2001-10-13 7:38 ` Rusty Russell
2001-10-13 16:28 ` Re: RFC: patch to allow lock-free traversal of lists with insertion ^M Paul E. McKenney
2001-10-13 21:23 ` Rusty Russell
2001-10-13 1:07 ` [Lse-tech] Re: RFC: patch to allow lock-free traversal of lists with insertion Paul Mackerras
2001-10-13 1:54 ` Davide Libenzi
2001-10-13 2:04 ` Linus Torvalds
2001-10-13 2:31 ` Davide Libenzi
2001-10-13 2:46 ` Davide Libenzi
2001-10-13 3:30 ` Linus Torvalds
2001-10-13 2:49 ` Paul Mackerras [this message]
2001-10-13 14:11 ` Re: RFC: patch to allow lock-free traversal of lists Paul E. McKenney
2001-10-13 2:00 ` [Lse-tech] Re: RFC: patch to allow lock-free traversal of lists with insertion Linus Torvalds
2001-10-13 13:54 ` [Lse-tech] Re: RFC: patch to allow lock-free traversal of lists Alan Cox
2001-10-12 5:43 ` [Lse-tech] Re: RFC: patch to allow lock-free traversal of lists with Albert D. Cahalan
2001-10-12 8:28 ` Alex Bligh - linux-kernel
2001-10-12 8:51 ` Jonathan Lundell
2001-10-12 6:26 ` Paul Mackerras
-- strict thread matches above, loose matches on Subject: below --
2001-10-13 14:42 [Lse-tech] Re: RFC: patch to allow lock-free traversal of lists with insertion Paul McKenney
2001-10-13 17:23 ` Linus Torvalds
2001-10-13 17:28 ` Linus Torvalds
2001-10-14 7:25 ` Dipankar Sarma
2001-10-13 18:42 ` Andi Kleen
2001-10-13 19:15 ` Alexander Viro
2001-10-13 20:44 ` Rusty Russell
2001-10-13 21:19 ` Rusty Russell
2001-10-11 10:34 Dipankar Sarma
[not found] <20011010182730.0077454b.rusty@rustcorp.com.au>
2001-10-10 9:36 ` Linus Torvalds
2001-10-11 6:50 ` Rusty Russell
2001-10-10 21:44 Paul McKenney
2001-10-10 16:00 Paul McKenney
2001-10-10 10:06 Dipankar Sarma
2001-10-10 10:18 ` Linus Torvalds
2001-10-10 11:43 ` Dipankar Sarma
2001-10-12 3:27 ` Rusty Russell
2001-10-12 16:56 ` Linus Torvalds
2001-10-12 18:53 ` Dipankar Sarma
2001-10-13 7:25 ` Rusty Russell
2001-10-10 7:58 Dipankar Sarma
2001-10-10 7:06 Dipankar Sarma
2001-10-10 7:21 ` BALBIR SINGH
2001-10-10 9:06 ` Dipankar Sarma
2001-10-10 6:54 Dipankar Sarma
2001-10-10 4:43 Paul McKenney
2001-10-09 15:45 Paul McKenney
2001-10-10 2:05 ` [Lse-tech] " Andrea Arcangeli
2001-10-10 5:05 ` Linus Torvalds
2001-10-10 5:17 ` BALBIR SINGH
2001-10-10 5:29 ` Davide Libenzi
2001-10-10 5:46 ` Linus Torvalds
2001-10-10 6:01 ` BALBIR SINGH
2001-10-10 15:23 ` Victor Yodaiken
2001-10-10 11:54 ` Keith Owens
2001-10-10 6:16 ` Paul Mackerras
2001-10-10 6:30 ` Linus Torvalds
2001-10-10 7:36 ` Paul Mackerras
2001-10-10 15:54 ` Victor Yodaiken
2001-10-10 21:56 ` Keith Owens
2001-10-10 22:24 ` Victor Yodaiken
2001-10-10 23:46 ` David S. Miller
2001-10-11 0:24 ` Davide Libenzi
2001-10-10 13:24 ` Ivan Kokshaysky
2001-10-10 13:41 ` Andrea Arcangeli
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=15303.43933.96690.366643@cargo.ozlabs.ibm.com \
--to=paulus@samba.org \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@transmeta.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome