[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] Re: [PATCH] temporary fix for on_vcpu
From: |
Glauber Costa |
Subject: |
[Qemu-devel] Re: [PATCH] temporary fix for on_vcpu |
Date: |
Fri, 11 Sep 2009 13:12:19 -0300 |
User-agent: |
Jack Bauer |
On Fri, Sep 11, 2009 at 05:56:08PM +0200, Jan Kiszka wrote:
> Glauber Costa wrote:
> > Recent changes made on_vcpu hit the abort() path, even with the IO thread
> > disabled. This is because cpu_single_env is no longer set when we call this
> > function. Although the correct fix is a little bit more complicated that
> > that,
> > the recent thread in which I proposed qemu_queue_work (which fixes that,
> > btw),
> > is likely to go on a quite different direction.
> >
> > So for the benefit of those using guest debugging, I'm proposing this simple
> > fix in the interim.
> >
> > Signed-off-by: Glauber Costa <address@hidden>
> > ---
> > kvm-all.c | 4 ++++
> > 1 files changed, 4 insertions(+), 0 deletions(-)
> >
> > diff --git a/kvm-all.c b/kvm-all.c
> > index df4e849..2c24440 100644
> > --- a/kvm-all.c
> > +++ b/kvm-all.c
> > @@ -902,11 +902,15 @@ void kvm_setup_guest_memory(void *start, size_t size)
> > #ifdef KVM_CAP_SET_GUEST_DEBUG
> > static void on_vcpu(CPUState *env, void (*func)(void *data), void *data)
> > {
> > +#ifdef CONFIG_IOTHREAD
> > if (env == cpu_single_env) {
> > func(data);
> > return;
> > }
> > abort();
> > +#else
> > + func(data);
>
> spaces++ :) But the workaround works.
>
> > +#endif
> > }
> >
> > struct kvm_sw_breakpoint *kvm_find_sw_breakpoint(CPUState *env,
>
> Unless there is hope to fix kvm in iothread mode soon, we should issue a
> warning or even disable kvm support in that setup. That is particularly
> important for 0.11-stable.
As I said, with the fixes I sent recently, it should work pretty well.