From: "H . J . Lu" <hjl@lucon.org>
To: Hiroyuki Machida <machida@sm.sony.co.jp>
Cc: kaz@ashi.footprints.net, macro@ds2.pg.gda.pl,
libc-alpha@sources.redhat.com, linux-mips@oss.sgi.com
Subject: Re: [libc-alpha] Re: PATCH: Fix ll/sc for mips
Date: Thu, 31 Jan 2002 23:00:50 -0800 [thread overview]
Message-ID: <20020131230050.C32690@lucon.org> (raw)
In-Reply-To: <20020201.135903.123568420.machida@sm.sony.co.jp>; from machida@sm.sony.co.jp on Fri, Feb 01, 2002 at 01:59:03PM +0900
On Fri, Feb 01, 2002 at 01:59:03PM +0900, Hiroyuki Machida wrote:
>
> From: Kaz Kylheku <kaz@ashi.footprints.net>
> Subject: Re: [libc-alpha] Re: PATCH: Fix ll/sc for mips
> Date: Thu, 31 Jan 2002 20:02:25 -0800 (PST)
>
> > On Fri, 1 Feb 2002, Hiroyuki Machida wrote:
> > > Please note that "sc" may fail even if nobody write the
> > > variable. (See P.211 "8.4.2 Load-Linked/Sotre-Conditional" of "See
> > > MIPS RUN" for more detail.)
> > > So, after your patch applied, compare_and_swap() may fail, even if
> > > *p is equal to oldval.
> >
> > I can't think of anything that will break because of this, as long
> > as the compare_and_swap eventually succeeds on some subsequent trial.
> > If the atomic operation has to abort for some reason other than *p being
> > unequal to oldval, that should be cool.
>
> I mean that this patch breaks the spec of compare_and_swap().
> In most case, this patch may works as Kaz said. If this patch have
> no side-effect to any application, it's ok to apply the patch. But
> we can't know how to use compare_and_swap() in all aplications in a
> whole world. So we have to follow the spec.
>
Please note that the old compare_and_swap is broken. If you use
compare_and_swap to check if *p == oldval, my patch doesn't help
you. But if you use it to swap old/new, my patch works fine. But I
don't think you can use it check if *p == oldval since *p can change
at any time. It is the same as simply using "*p == oldval". I don't
see my patch should break any sane applications.
H.J.
next prev parent reply other threads:[~2002-02-01 8:00 UTC|newest]
Thread overview: 75+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-01-31 20:35 PATCH: Fix ll/sc for mips H . J . Lu
2002-01-31 22:17 ` Maciej W. Rozycki
2002-01-31 22:41 ` H . J . Lu
2002-02-01 3:35 ` Hiroyuki Machida
2002-02-01 4:02 ` [libc-alpha] " Kaz Kylheku
2002-02-01 4:02 ` Kaz Kylheku
2002-02-01 4:59 ` Hiroyuki Machida
2002-02-01 7:00 ` H . J . Lu [this message]
2002-02-01 11:12 ` Hiroyuki Machida
2002-02-01 10:49 ` Andreas Schwab
2002-02-01 11:23 ` Geoff Keating
2002-02-01 7:10 ` H . J . Lu
2002-02-01 7:17 ` H . J . Lu
2002-02-01 11:45 ` Maciej W. Rozycki
2002-02-01 18:29 ` PATCH: Fix ll/sc for mips (take 3) H . J . Lu
2002-02-01 23:01 ` Daniel Jacobowitz
2002-02-01 23:15 ` H . J . Lu
2002-02-02 2:37 ` Hiroyuki Machida
2002-02-04 9:32 ` Dominic Sweetman
2002-02-05 6:16 ` Jay Carlson
2002-02-05 8:28 ` Ralf Baechle
2002-02-05 15:10 ` Jay Carlson
2002-02-05 16:06 ` Jay Carlson
2002-02-02 3:26 ` Daniel Jacobowitz
2002-02-02 18:53 ` Justin Carlson
2002-02-02 20:03 ` H . J . Lu
2002-02-02 20:49 ` Hartvig Ekner
2002-02-02 20:49 ` Hartvig Ekner
2002-02-03 5:47 ` Justin Carlson
2002-02-04 19:17 ` Paul Koning
[not found] ` <mailpost.1012680250.7159@news-sj1-1>
2002-02-03 23:29 ` cgd
2002-02-04 6:07 ` Ralf Baechle
2002-02-04 9:46 ` Dominic Sweetman
2002-02-04 16:31 ` H . J . Lu
2002-02-04 16:46 ` Dominic Sweetman
2002-02-05 1:28 ` H . J . Lu
2002-02-05 2:58 ` Daniel Jacobowitz
2002-02-05 4:42 ` H . J . Lu
2002-02-05 4:47 ` Daniel Jacobowitz
2002-02-05 5:30 ` Justin Carlson
2002-02-05 8:39 ` Hartvig Ekner
2002-02-05 8:39 ` Hartvig Ekner
2002-02-05 11:37 ` Maciej W. Rozycki
2002-02-05 12:12 ` Ralf Baechle
2002-02-05 12:31 ` Maciej W. Rozycki
2002-02-05 12:38 ` Hartvig Ekner
2002-02-05 12:38 ` Hartvig Ekner
2002-02-05 13:28 ` Maciej W. Rozycki
2002-02-05 19:28 ` Hartvig Ekner
2002-02-05 19:28 ` Hartvig Ekner
2002-02-05 18:59 ` Ralf Baechle
2002-02-05 19:30 ` H . J . Lu
2002-02-05 21:54 ` H . J . Lu
2002-02-06 10:32 ` Ralf Baechle
2002-02-06 20:45 ` Why does -g turn off filling the delat slot? H . J . Lu
2002-02-06 21:00 ` PATCH: Modify the mips gas behavior for -g -O H . J . Lu
2002-02-06 21:16 ` Eric Christopher
2002-02-06 21:40 ` Ian Lance Taylor
2002-02-06 21:46 ` Eric Christopher
2002-02-06 22:00 ` PATCH: Define SUBTARGET_ASM_DEBUGGING_SPEC for Linux/mips H . J . Lu
2002-02-07 8:24 ` Eric Christopher
2002-02-06 11:37 ` PATCH: Fix ll/sc for mips (take 3) Maciej W. Rozycki
2002-02-04 17:44 ` cgd
2002-02-04 6:46 ` Ralf Baechle
2002-02-04 7:01 ` PATCH: Fix ll/sc for mips Ralf Baechle
2002-02-04 14:54 ` Maciej W. Rozycki
2002-02-01 11:50 ` Maciej W. Rozycki
2002-02-01 17:40 ` H . J . Lu
2002-02-01 21:41 ` Maciej W. Rozycki
2002-02-01 22:47 ` H . J . Lu
2002-02-02 11:06 ` Maciej W. Rozycki
2002-02-03 2:29 ` Ulrich Drepper
2002-02-03 2:29 ` Ulrich Drepper
2002-01-31 23:33 ` [libc-alpha] " Kaz Kylheku
2002-01-31 23:33 ` Kaz Kylheku
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=20020131230050.C32690@lucon.org \
--to=hjl@lucon.org \
--cc=kaz@ashi.footprints.net \
--cc=libc-alpha@sources.redhat.com \
--cc=linux-mips@oss.sgi.com \
--cc=machida@sm.sony.co.jp \
--cc=macro@ds2.pg.gda.pl \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.