From: Steven Munroe <munroesj@linux.vnet.ibm.com>
To: Florian Weimer <fweimer@redhat.com>
Cc: Torvald Riegel <triegel@redhat.com>,
Rajalakshmi Srinivasaraghavan <raji@linux.vnet.ibm.com>,
libc-alpha@sourceware.org,
aaron Sawdey <acsawdey@linux.vnet.ibm.com>,
Ulrich Weigand <Ulrich.Weigand@de.ibm.com>,
Steve Munroe <sjmunroe@us.ibm.co>,
carlos@redhat.com, adhemerval.zanella@linaro.org,
adconrad@ubuntu.com, wschmidt@linux.vnet.ibm.com
Subject: Re: Informal model for transactional memory (was: Re: BZ 20822 :powerpc: race condition in __lll_unlock_elision)
Date: Tue, 22 Nov 2016 20:15:00 -0000 [thread overview]
Message-ID: <1479845711.8455.29.camel@oc7878010663> (raw)
In-Reply-To: <e132812d-ec34-c69c-2aa0-c5d3f81c1bdb@redhat.com>
On Tue, 2016-11-22 at 19:40 +0100, Florian Weimer wrote:
> Torvald,
>
> I'm sorry for my earlier rather destructive comments.
>
> Do you think those of us who do not work on the implementations of the
> libothread concurrency primitives need to deal with transactional memory
> issues at all?
>
Well ... transactional memory is directly available to applications via builtins provided by GCC.
https://gcc.gnu.org/onlinedocs/gcc-6.2.0/gcc/x86-transactional-memory-intrinsics.html#x86-transactional-memory-intrinsics
https://gcc.gnu.org/onlinedocs/gcc-6.2.0/gcc/PowerPC-Hardware-Transactional-Memory-Built-in-Functions.html#PowerPC-Hardware-Transactional-Memory-Built-in-Functions
https://gcc.gnu.org/onlinedocs/gcc-6.2.0/gcc/S_002f390-System-z-Built-in-Functions.html#S_002f390-System-z-Built-in-Functions
The PowerPC and S390 APIs are closely aligned. So any one with access to Power8/OpenPOWER, Z12, or Haswell and use it.
So yes.
>
>
> The libc-internal locks do not even implement elision, and if we use
> hardware transactional memory implementations for lock elision only and
> that elision is semantically transparent, then the details would not
> matter to the rest of glibc. We just have to think about the locking.
>
> Is this the right approach?
>
> Obviously, we will have to consider once we start using transactional
> memory for anything else beside lock elision, but this seems to be
> rather far away at this point.
> Thanks,
> Florian
>
next prev parent reply other threads:[~2016-11-22 20:15 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-11-15 16:13 BZ 20822 :powerpc: race condition in __lll_unlock_elision Rajalakshmi Srinivasaraghavan
2016-11-16 13:40 ` Adhemerval Zanella
2016-11-16 14:08 ` Szabolcs Nagy
2016-11-16 14:31 ` Adhemerval Zanella
2016-11-16 15:54 ` Rajalakshmi Srinivasaraghavan
2016-11-17 14:47 ` Torvald Riegel
2016-11-21 23:42 ` Steven Munroe
2016-11-22 8:44 ` Torvald Riegel
2016-11-22 8:55 ` Florian Weimer
2016-11-22 9:41 ` Torvald Riegel
2016-11-22 10:52 ` Florian Weimer
2016-11-22 13:45 ` Torvald Riegel
2016-11-22 15:02 ` Florian Weimer
2016-11-22 16:58 ` Torvald Riegel
2016-11-22 18:40 ` Informal model for transactional memory (was: Re: BZ 20822 :powerpc: race condition in __lll_unlock_elision) Florian Weimer
2016-11-22 20:15 ` Steven Munroe [this message]
2016-11-23 14:29 ` Torvald Riegel
2016-11-22 18:03 ` BZ 20822 :powerpc: race condition in __lll_unlock_elision Steven Munroe
2016-11-23 11:30 ` Torvald Riegel
2016-11-23 17:02 ` Steven Munroe
2016-11-23 18:35 ` Torvald Riegel
2016-12-04 12:14 ` Torvald Riegel
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=1479845711.8455.29.camel@oc7878010663 \
--to=munroesj@linux.vnet.ibm.com \
--cc=Ulrich.Weigand@de.ibm.com \
--cc=acsawdey@linux.vnet.ibm.com \
--cc=adconrad@ubuntu.com \
--cc=adhemerval.zanella@linaro.org \
--cc=carlos@redhat.com \
--cc=fweimer@redhat.com \
--cc=libc-alpha@sourceware.org \
--cc=raji@linux.vnet.ibm.com \
--cc=sjmunroe@us.ibm.co \
--cc=triegel@redhat.com \
--cc=wschmidt@linux.vnet.ibm.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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).