[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4F2E5245.3070400@redhat.com>
Date: Sun, 05 Feb 2012 11:56:21 +0200
From: Avi Kivity <avi@...hat.com>
To: Gleb Natapov <gleb@...hat.com>
CC: KVM list <kvm@...r.kernel.org>,
linux-kernel <linux-kernel@...r.kernel.org>,
qemu-devel <qemu-devel@...gnu.org>
Subject: Re: [RFC] Next gen kvm api
On 02/05/2012 11:51 AM, Gleb Natapov wrote:
> On Sun, Feb 05, 2012 at 11:44:43AM +0200, Avi Kivity wrote:
> > On 02/05/2012 11:37 AM, Gleb Natapov wrote:
> > > On Thu, Feb 02, 2012 at 06:09:54PM +0200, Avi Kivity wrote:
> > > > Device model
> > > > ------------
> > > > Currently kvm virtualizes or emulates a set of x86 cores, with or
> > > > without local APICs, a 24-input IOAPIC, a PIC, a PIT, and a number of
> > > > PCI devices assigned from the host. The API allows emulating the local
> > > > APICs in userspace.
> > > >
> > > > The new API will do away with the IOAPIC/PIC/PIT emulation and defer
> > > > them to userspace. Note: this may cause a regression for older guests
> > > > that don't support MSI or kvmclock. Device assignment will be done
> > > > using VFIO, that is, without direct kvm involvement.
> > > >
> > > So are we officially saying that KVM is only for modern guest
> > > virtualization?
> >
> > No, but older guests may have reduced performance in some workloads
> > (e.g. RHEL4 gettimeofday() intensive workloads).
> >
> Reduced performance is what I mean. Obviously old guests will continue working.
I'm not happy about it either.
> > > Also my not so old host kernel uses MSI only for NIC.
> > > SATA and USB are using IOAPIC (though this is probably more HW related
> > > than kernel version related).
> >
> > For devices emulated in userspace, it doesn't matter where the IOAPIC
> > is. It only matters for kernel provided devices (PIT, assigned devices,
> > vhost-net).
> >
> What about EOI that will have to do additional exit to userspace for each
> interrupt delivered?
I think the ioapic EOI is asynchronous wrt the core, yes? So the vcpu
can just post the EOI broadcast on the apic-bus socketpair, waking up
the thread handling the ioapic, and continue running. This trades off
vcpu latency for using more host resources.
--
error compiling committee.c: too many arguments to function
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists