All of lore.kernel.org
 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 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.