qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Re: [PATCH 3/3] Add KVM support to QEMU


From: Blue Swirl
Subject: Re: [Qemu-devel] Re: [PATCH 3/3] Add KVM support to QEMU
Date: Sat, 1 Nov 2008 18:25:28 +0200

On 10/29/08, Blue Swirl <address@hidden> wrote:
> On 10/29/08, Avi Kivity <address@hidden> wrote:
>  > Hollis Blanchard wrote:
>  >
>  > > On Tue, Oct 28, 2008 at 6:36 PM, Anthony Liguori <address@hidden>
>  > wrote:
>  > >
>  > >
>  > > > Something I was thinking about this morning, and I think the first 
> place
>  > > > where we'll definitely need a hook, is how to deal with
>  > > > kvm_load_registers().  I think there's overlap between KVM and the IO
>  > thread
>  > > > here.
>  > > >
>  > > > There are two reasons (I can think of) that most of the device model
>  > code
>  > > > can't run in conjunction with TCG.  The first is that TCG may modify
>  > > > CPUState in a non-atomic way.  The device model may need to access
>  > CPUState
>  > > > although there are very few places that it does.
>  > > >
>  > > >
>  > >
>  > > Out of curiosity, where are those places?
>  > >
>  > >
>  >
>  >  local apic -- needs to access interrupt disable flag
>  >  acpi sleep -- halts the current processor, so tied to cpustate
>
>
> It should be possible to avoid these, just use a qemu_irq for per-CPU
>  interrupt lines and halt signals.

Just for fun, I made a set of small patches that convert apic to avoid
env access completely. Only lightly tested.

The fourth patch (suppress_apic_env_use_accessors.diff) is probably
not OK, because I changed the accessors to use the apic state as
registered for the MMIO, previous implementation used instead the apic
state associated with the currently running CPU.

I couldn't find any CPU state handling in acpi.c, is this a KVM
specific addition?

Attachment: suppress_apic_env_use_SIPI.diff
Description: plain/text

Attachment: suppress_apic_env_use_reset_NMI_SMI.diff
Description: plain/text

Attachment: suppress_apic_env_use_cpu.diff
Description: plain/text

Attachment: suppress_apic_env_use_accessors.diff
Description: plain/text


reply via email to

[Prev in Thread] Current Thread [Next in Thread]