From: Marcelo Tosatti <mtosatti@redhat.com>
To: Jan Kiszka <jan.kiszka@siemens.com>
Cc: Anthony Liguori <aliguori@us.ibm.com>,
"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>,
"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
Avi Kivity <avi@redhat.com>
Subject: [Qemu-devel] Re: [PATCH 4/4] KVM: Rework of guest debug state writing
Date: Thu, 4 Feb 2010 18:50:10 -0200 [thread overview]
Message-ID: <20100204205010.GA2766@amt.cnet> (raw)
In-Reply-To: <4B6B1E24.2090505@siemens.com>
On Thu, Feb 04, 2010 at 08:21:08PM +0100, Jan Kiszka wrote:
> Jan Kiszka wrote:
> > Marcelo Tosatti wrote:
> >> With kvm-autotest the failure is not sporadic (and the above commit
> >> applied): with KVM_SET_GUEST_DEBUG in arch_put_regs all migration
> >> tests fail, without, all of them succeed.
> >>
> >> So env->kvm_guest_debug has been zeroed by cpu_x86_init, which means
> >> the writeback via KVM_SET_GUEST_DEBUG does almost nothing. It does
> >> get_rflags and set_rflags in the kernel.
> >
> > Hmm, it also copies debug regs around... BTW, where do we save/restore
> > dr0..7 between kernel and user space?
They're not.
> > But that should not be a problem, both shadow as well as effective regs
> > should be properly initialized, specifically for a newly created VCPU.
Yep.
> Could you retry after pushing SET_GUEST_DEBUG at the end of
> kvm_arch_put_registers? Maybe it is no good idea to run get/set_rflags
> without having the sregs properly initialized.
Will do next week.
Another tricky thing with this is that the definition of whats the
kernel job and whats userspace job is somewhat blurry in points. For
example set_regs clears pending exceptions, which made sense in the
past, but breaks now if userspace does put_vcpu_events before set_regs
(which is not the case with current userspace but just an example).
Makes sense to heavily document things as suggested.
next prev parent reply other threads:[~2010-02-04 21:37 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-02-03 21:29 [Qemu-devel] [PATCH 0/4] KVM pull request: Various fixes and cleanups Jan Kiszka
2010-02-03 21:29 ` [Qemu-devel] [PATCH 1/4] KVM: x86: Fix up misreported CPU features Jan Kiszka
2010-02-03 21:29 ` [Qemu-devel] [PATCH 2/4] KVM: Make vmport KVM-compatible Jan Kiszka
2010-02-03 21:29 ` [Qemu-devel] [PATCH 3/4] KVM: Move and rename regs_modified Jan Kiszka
2010-02-03 21:29 ` [Qemu-devel] [PATCH 4/4] KVM: Rework of guest debug state writing Jan Kiszka
2010-02-03 23:49 ` [Qemu-devel] " Marcelo Tosatti
2010-02-04 0:33 ` Jan Kiszka
2010-02-04 13:00 ` Marcelo Tosatti
2010-02-04 15:04 ` Jan Kiszka
2010-02-04 15:41 ` Jan Kiszka
2010-02-04 18:05 ` Marcelo Tosatti
2010-02-04 18:53 ` Jan Kiszka
2010-02-04 19:00 ` Jan Kiszka
2010-02-08 15:52 ` Marcelo Tosatti
2010-02-08 16:07 ` Jan Kiszka
2010-02-04 19:21 ` Jan Kiszka
2010-02-04 20:50 ` Marcelo Tosatti [this message]
2010-02-08 15:52 ` Marcelo Tosatti
2010-02-03 21:35 ` [Qemu-devel] [PATCH 0/4] KVM pull request: Various fixes and cleanups Anthony Liguori
2010-02-03 21:54 ` Jan Kiszka
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=20100204205010.GA2766@amt.cnet \
--to=mtosatti@redhat.com \
--cc=aliguori@us.ibm.com \
--cc=avi@redhat.com \
--cc=jan.kiszka@siemens.com \
--cc=kvm@vger.kernel.org \
--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 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).