From: Jan Kiszka <jan.kiszka@siemens.com>
To: Glauber Costa <glommer@gmail.com>
Cc: Glauber Costa <glommer@redhat.com>,
"aliguori@us.ibm.com" <aliguori@us.ibm.com>,
Avi Kivity <avi@redhat.com>,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] Re: [PATCH 0/7] KVM SMP support, early version
Date: Tue, 01 Dec 2009 13:33:38 +0100 [thread overview]
Message-ID: <4B150D22.5070801@siemens.com> (raw)
In-Reply-To: <5d6222a80912010420q6ef5b433mcc75855b2b3d7968@mail.gmail.com>
Glauber Costa wrote:
> On Tue, Dec 1, 2009 at 10:17 AM, Jan Kiszka <jan.kiszka@siemens.com> wrote:
>> Avi Kivity wrote:
>>> On 11/30/2009 07:30 PM, Jan Kiszka wrote:
>>>>>> No. But what's wrong with on_vcpu?
>>>>>>
>>>>> intrinsically racy. signal passing slow down things, etc.
>>>>>
>>>>> That said, as I've stated many times: I don't believe there's anything
>>>>> fundamentally wrong with on_vcpu. But we might get benefits from a re-design
>>>>> of things to avoid it whenever possible. (just like the vcpu_reset()
>>>>> I've just posted)
>>>>>
>>>>>
>>>> If you don't want immediate execution of update_guest_debug, save the
>>>> state that shall be transferred, set some flag, and run the transfer
>>>> before guest entry inside the vcpu threads (after putting the registers
>>>> as older kernels may otherwise overwrite the flags register). Should
>>>> work, may even avoid redundant calls during a gdb session.
>>>>
>>> There's no guarantee the vcpu will ever exit to qemu, so you have to
>>> signal the vcpu thread anyway. When you do that, you might as well load
>>> the new state.
>> Debugging is special here as it involves vmstop before you start playing
>> with the debug settings. But I may also oversee some corner case right now.
>>
>
> I imagined so. In this case, it might be better to set a flag before
> vmstop, and then
> honor it on vcpu entry. I had this feeling that in most cases where we
> current signal the
> vcpu, the VM will be already stopped anyway, so we don't need to resignal.
>
Do not set the flag before the machine stop, otherwise you risk to race
with vcpus that exit and re-enter briefly before that. This manipulation
should really be done under vmstop protection.
Jan
--
Siemens AG, Corporate Technology, CT T DE IT 1
Corporate Competence Center Embedded Linux
next prev parent reply other threads:[~2009-12-01 12:33 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-11-26 17:24 [Qemu-devel] [PATCH 0/7] KVM SMP support, early version Glauber Costa
2009-11-26 17:24 ` [Qemu-devel] [PATCH 1/7] Don't mess with halted state Glauber Costa
2009-11-26 17:24 ` [Qemu-devel] [PATCH 2/7] store thread-specific env information Glauber Costa
2009-11-26 17:24 ` [Qemu-devel] [PATCH 3/7] update halted state on mp_state sync Glauber Costa
2009-11-26 17:24 ` [Qemu-devel] [PATCH 4/7] qemu_flush_work for remote vcpu execution Glauber Costa
2009-11-26 17:24 ` [Qemu-devel] [PATCH 5/7] tell kernel about all registers instead of just mp_state Glauber Costa
2009-11-26 17:24 ` [Qemu-devel] [PATCH 6/7] Don't call kvm cpu reset on initialization Glauber Costa
2009-11-26 17:25 ` [Qemu-devel] [PATCH 7/7] remove smp restriction from kvm Glauber Costa
2009-11-29 15:32 ` [Qemu-devel] [PATCH 5/7] tell kernel about all registers instead of just mp_state Avi Kivity
2009-11-30 11:45 ` Glauber Costa
2009-11-30 12:04 ` Gleb Natapov
2009-11-30 12:05 ` Avi Kivity
2009-11-30 13:31 ` Glauber Costa
2009-11-30 13:32 ` Avi Kivity
2009-11-29 15:32 ` [Qemu-devel] [PATCH 4/7] qemu_flush_work for remote vcpu execution Avi Kivity
2009-11-30 11:44 ` Glauber Costa
2009-11-30 12:06 ` Avi Kivity
2009-11-30 11:48 ` [Qemu-devel] " Paolo Bonzini
2009-11-29 15:29 ` [Qemu-devel] [PATCH 2/7] store thread-specific env information Avi Kivity
2009-11-29 15:38 ` Andreas Färber
2009-11-29 15:42 ` Avi Kivity
2009-11-29 16:00 ` Andreas Färber
2009-11-29 22:29 ` Jamie Lokier
2009-11-30 11:36 ` [Qemu-devel] " Paolo Bonzini
2009-11-30 11:41 ` Glauber Costa
2009-11-30 11:49 ` Paolo Bonzini
2009-11-30 12:07 ` Avi Kivity
2009-11-29 17:32 ` [Qemu-devel] Re: [PATCH 0/7] KVM SMP support, early version Jan Kiszka
2009-11-30 11:42 ` Glauber Costa
2009-11-30 15:55 ` Glauber Costa
2009-11-30 16:40 ` Avi Kivity
2009-11-30 16:47 ` Glauber Costa
2009-11-30 17:30 ` Jan Kiszka
2009-12-01 12:10 ` Avi Kivity
2009-12-01 12:17 ` Jan Kiszka
2009-12-01 12:20 ` Glauber Costa
2009-12-01 12:33 ` Jan Kiszka [this message]
2009-11-30 16:50 ` Avi Kivity
2009-12-01 0:31 ` [Qemu-devel] " Ed Swierk
2009-12-01 0:42 ` Ed Swierk
2009-12-01 12:20 ` Alexander Graf
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=4B150D22.5070801@siemens.com \
--to=jan.kiszka@siemens.com \
--cc=aliguori@us.ibm.com \
--cc=avi@redhat.com \
--cc=glommer@gmail.com \
--cc=glommer@redhat.com \
--cc=qemu-devel@nongnu.org \
/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.