From: Alexander Graf <agraf@suse.de>
To: Mark Burton <mark.burton@greensocs.com>
Cc: mttcg@listserver.greensocs.com,
"Peter Maydell" <peter.maydell@linaro.org>,
"QEMU Developers" <qemu-devel@nongnu.org>,
"Paolo Bonzini" <pbonzini@redhat.com>,
"Lluís Vilanova" <vilanova@ac.upc.edu>,
"KONRAD Frédéric" <fred.konrad@greensocs.com>
Subject: Re: [Qemu-devel] [RFC PATCH] target-arm: protect cpu_exclusive_*.
Date: Wed, 17 Dec 2014 11:45:26 +0100 [thread overview]
Message-ID: <54915EC6.2050708@suse.de> (raw)
In-Reply-To: <DC28F09E-E330-4E78-A80B-CFDEDA643E06@greensocs.com>
On 17.12.14 11:31, Mark Burton wrote:
>
>> On 17 Dec 2014, at 11:28, Alexander Graf <agraf@suse.de> wrote:
>>
>>
>>
>> On 17.12.14 11:27, Frederic Konrad wrote:
>>> On 16/12/2014 17:37, Peter Maydell wrote:
>>>> On 16 December 2014 at 09:13, <fred.konrad@greensocs.com> wrote:
>>>>> From: KONRAD Frederic <fred.konrad@greensocs.com>
>>>>>
>>>>> This adds a lock to avoid multiple exclusive access at the same time
>>>>> in case of
>>>>> TCG multithread.
>>> Hi Peter,
>>>
>>>> This feels to me like it's not really possible to review on
>>>> its own, since you can't see how it fits into the design of
>>>> the rest of the multithreading support.
>>> true the only thing we observe is that it didn't change anything right now.
>>>
>>>> The other approach here rather than having a pile of mutexes
>>>> in the target-* code would be to have TCG IR support for
>>>> "begin critical section"/"end critical section". Then you
>>>> could have the main loop ensure that no other CPU is running
>>>> at the same time as the critical-section code. (linux-user
>>>> already has an ad-hoc implementation of this for the
>>>> exclusives.)
>>>>
>>>> -- PMM
>>>>
>>> What do you mean by TCG IR?
>>
>> TCP ops. The nice thing is that TCG could translate those into
>> transactions if the host supports them as well.
>>
>
> Hows that different in reality from what we have now?
> Cheers
> Mark.
The current code can't optimize things in TCG. There's a good chance
your TCG host implementation can have an optimization pass that creates
host cmpxchg instructions or maybe even transaction blocks out of the
critical sections.
Alex
next prev parent reply other threads:[~2014-12-17 10:45 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-12-16 9:13 [Qemu-devel] [RFC PATCH] target-arm: protect cpu_exclusive_* fred.konrad
2014-12-16 9:31 ` Paolo Bonzini
2014-12-16 9:36 ` Frederic Konrad
2014-12-16 9:49 ` Paolo Bonzini
2014-12-16 9:54 ` Frederic Konrad
2014-12-16 16:37 ` Peter Maydell
2014-12-17 10:27 ` Frederic Konrad
2014-12-17 10:28 ` Alexander Graf
2014-12-17 10:31 ` Mark Burton
2014-12-17 10:45 ` Alexander Graf [this message]
2014-12-17 11:12 ` Mark Burton
2014-12-17 11:18 ` Alexander Graf
2014-12-17 11:25 ` Paolo Bonzini
2014-12-17 11:36 ` Peter Maydell
2014-12-17 16:17 ` Mark Burton
2014-12-17 16:27 ` Peter Maydell
2014-12-17 16:29 ` Mark Burton
2014-12-17 16:39 ` Peter Maydell
2014-12-17 16:51 ` Peter Maydell
2014-12-18 9:12 ` Mark Burton
2014-12-18 12:24 ` Alexander Graf
2014-12-18 12:35 ` Dr. David Alan Gilbert
2014-12-18 13:28 ` Paolo Bonzini
2014-12-18 13:56 ` Mark Burton
2014-12-18 14:20 ` Mark Burton
2014-12-18 14:44 ` Alexander Graf
2014-12-18 14:51 ` Mark Burton
2014-12-18 15:05 ` Alexander Graf
2014-12-18 15:09 ` Mark Burton
2014-12-18 16:55 ` Paolo Bonzini
2014-12-17 15:52 ` Mark Burton
2014-12-17 16:20 ` Dr. David Alan Gilbert
2014-12-17 11:19 ` Peter Maydell
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=54915EC6.2050708@suse.de \
--to=agraf@suse.de \
--cc=fred.konrad@greensocs.com \
--cc=mark.burton@greensocs.com \
--cc=mttcg@listserver.greensocs.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=vilanova@ac.upc.edu \
/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 NNTP newsgroup(s).