From: "Gleb O. Raiko" <raiko@niisi.msk.ru>
To: Johannes Stezenbach <js@convergence.de>
Cc: "Maciej W. Rozycki" <macro@ds2.pg.gda.pl>,
"Kevin D. Kissell" <kevink@mips.com>,
linux-mips@linux-mips.org
Subject: Re: Once again: test_and_set for CPUs w/o LL/SC
Date: Thu, 17 Oct 2002 17:32:03 +0400 [thread overview]
Message-ID: <3DAEBBD3.333275FC@niisi.msk.ru> (raw)
In-Reply-To: 20021017131115.GA1689@convergence.de
Johannes Stezenbach wrote:
>
> On Thu, Oct 17, 2002 at 02:02:35PM +0200, Maciej W. Rozycki wrote:
> > On Thu, 17 Oct 2002, Gleb O. Raiko wrote:
> >
> > > Implement new sysmips then.
> >
> > I'm not sure if that's a good idea. Glibc alone uses test_and_set(),
> > exchange_and_add(), atomic_add() and compare_and_swap(). Do you want a
> > separate syscall for each of these functions? I think the ll/sc emulation
> > may be the best solution after all. At least it's most flexible and not
> > much slower if at all.
>
> Depends on your usage pattern. E.g. we don't run software that uses
> atomicity.h (i.e. no C++ code), but heavily use pthread_mutex_lock() etc.
> The few uses of atomicity.h internal to glibc don't warrant
> any optimizations. So, if the beql-Method would not exist, I would
> consider implementing a new sysmips for compare_and_swap().
I didn't look at newer glibc sources (read: greater than 2.0.6), so the
question. Why is the difference between compare_and_swap and
test_and_set so huge that it eats an exception penalty? ;-)
Regards,
Gleb.
next prev parent reply other threads:[~2002-10-17 13:28 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-09-16 16:40 Once again: test_and_set for CPUs w/o LL/SC Johannes Stezenbach
2002-10-07 14:47 ` Johannes Stezenbach
2002-10-07 16:21 ` Kevin D. Kissell
2002-10-07 16:21 ` Kevin D. Kissell
2002-10-07 18:43 ` Johannes Stezenbach
2002-10-07 18:51 ` Daniel Jacobowitz
2002-10-15 17:52 ` Johannes Stezenbach
2002-10-08 7:38 ` Kevin D. Kissell
2002-10-08 7:38 ` Kevin D. Kissell
2002-10-15 15:36 ` Maciej W. Rozycki
2002-10-15 17:21 ` Johannes Stezenbach
2002-10-16 12:20 ` Maciej W. Rozycki
2002-10-16 12:52 ` Johannes Stezenbach
2002-10-16 16:30 ` Johannes Stezenbach
2002-10-17 9:47 ` Gleb O. Raiko
2002-10-17 12:02 ` Maciej W. Rozycki
2002-10-17 13:11 ` Johannes Stezenbach
2002-10-17 13:32 ` Gleb O. Raiko [this message]
2002-10-17 14:13 ` Johannes Stezenbach
2002-10-16 18:11 ` Johannes Stezenbach
2002-10-16 18:23 ` Johannes Stezenbach
2002-10-17 11:57 ` Maciej W. Rozycki
2002-10-17 13:25 ` Johannes Stezenbach
2002-10-15 15:17 ` Maciej W. Rozycki
2002-10-15 16:50 ` Johannes Stezenbach
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=3DAEBBD3.333275FC@niisi.msk.ru \
--to=raiko@niisi.msk.ru \
--cc=js@convergence.de \
--cc=kevink@mips.com \
--cc=linux-mips@linux-mips.org \
--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.