qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Andreas Färber" <afaerber@suse.de>
To: Michael Tokarev <mjt@tls.msk.ru>
Cc: Peter Maydell <peter.maydell@linaro.org>,
	Anthony Liguori <aliguori@us.ibm.com>,
	qemu-stable <qemu-stable@nongnu.org>,
	qemu-devel@nongnu.org, Alexander Graf <agraf@suse.de>,
	Blue Swirl <blauwirbel@gmail.com>,
	Paul Brook <paul@codesourcery.com>,
	Richard Henderson <rth@twiddle.net>
Subject: Re: [Qemu-devel] [PATCH 0/6] Drop the irredeemably racy cpu_unlink_tb()
Date: Thu, 09 May 2013 12:26:22 +0200	[thread overview]
Message-ID: <518B79CE.9060703@suse.de> (raw)
In-Reply-To: <518B59C3.6070507@msgid.tls.msk.ru>

Am 09.05.2013 10:09, schrieb Michael Tokarev:
> 22.02.2013 22:09, Peter Maydell wrote:
>>   cpu-exec: wrap tcg_qemu_tb_exec() in a fn to restore the PC
> 
> This needed a "back merge" of env+cpu states back to cpu.
> Maybe we should somehow revisit the whole concept of the
> two, because it's sorta fun: at some point all functions
> has been converted to accept `cpu' instead of `env', but
> in many places the first thing a function does is to
> get `env' pointer out of `cpu'.

The concept is really easy: There is so much CPU code around that for
many years no one dared to touch it, ;) so changes need to be done
incrementally - not only to identify any fallout! If one function is
converted to no longer rely on env, then rather likely in some caller it
still needs to convert from env -> cpu. Once that caller is converted
too, it goes on moving the conversion "outwards" until the only
remaining env functions are TCG-related. env access from a specific *CPU
type is cheap, thus only talking about common code here. You will find
more background on the big "QOM CPUState part X" series. CPU_COMMON is
definitely not the way for the future, it should be okay for backporting
though in this case.

Regards,
Andreas

-- 
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg

      parent reply	other threads:[~2013-05-09 10:26 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1361556605-21963-1-git-send-email-peter.maydell@linaro.org>
2013-03-03 13:23 ` [Qemu-devel] [PATCH 0/6] Drop the irredeemably racy cpu_unlink_tb() Peter Maydell
2013-03-03 15:50 ` Blue Swirl
2013-05-09  8:09 ` Michael Tokarev
2013-05-09  8:13   ` [Qemu-devel] [PATCH 1/4] tcg: Document tcg_qemu_tb_exec() and provide constants for low bit uses Michael Tokarev
2013-05-09  8:13   ` [Qemu-devel] [PATCH 2/4] cpu-exec: wrap tcg_qemu_tb_exec() in a fn to restore the PC Michael Tokarev
2013-05-09  8:13   ` [Qemu-devel] [PATCH 3/4] Handle CPU interrupts by inline checking of a flag Michael Tokarev
2013-05-09  8:13   ` [Qemu-devel] [PATCH 4/4] translate-all.c: Remove cpu_unlink_tb() Michael Tokarev
2013-05-09  9:01   ` [Qemu-devel] [PATCH 0/6] Drop the irredeemably racy cpu_unlink_tb() Peter Maydell
2013-05-09 10:05     ` Michael Tokarev
2013-05-09 10:26   ` Andreas Färber [this message]

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=518B79CE.9060703@suse.de \
    --to=afaerber@suse.de \
    --cc=agraf@suse.de \
    --cc=aliguori@us.ibm.com \
    --cc=blauwirbel@gmail.com \
    --cc=mjt@tls.msk.ru \
    --cc=paul@codesourcery.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-stable@nongnu.org \
    --cc=rth@twiddle.net \
    /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).