[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [Qemu-devel] [PATCH] ARM: KVM: Enable in-kernel timers wi
From: |
Andrew Jones |
Subject: |
Re: [Qemu-arm] [Qemu-devel] [PATCH] ARM: KVM: Enable in-kernel timers with user space gic |
Date: |
Tue, 27 Jun 2017 15:59:51 +0200 |
User-agent: |
Mutt/1.6.0.1 (2016-04-01) |
On Tue, Jun 27, 2017 at 03:00:10PM +0200, Alexander Graf wrote:
> > > + /* XXX PMU IRQ is missing */
> >
> > So I was wondering why you chose not to wire up the PMU in order to finish
>
> Because the PMU IRQ is only available from the machine file, so it'll need
> some more plumbing to get the qemu_irq object available from kvm.c.
OK, I just wrote a patch based on this patch for the PMU and will post it
in a second.
>
> > this off, since I knew KVM has commit 3dbbdf78636e "KVM: arm/arm64: Report
> > PMU overflow interrupts to userspace irqchip", which I presume should
> > allow the PMU to work too. However, attempting to start a guest with
> > -machine virt,accel=kvm,kernel-irqchip=off -cpu host,pmu=on doesn't provide
> > it a PMU. AFAICT, that's only because KVM still has
> >
> > /*
> > * We currently require an in-kernel VGIC to use the PMU emulation,
> > * because we do not support forwarding PMU overflow interrupts to
> > * userspace yet.
> > */
> > if (!irqchip_in_kernel(vcpu->kvm) || !vgic_initialized(vcpu->kvm))
> > return -ENODEV;
> >
> > in kvm_arm_pmu_v3_init(). Anyone know why that wasn't removed with
> > 3dbbdf78636e?
>
> I guess it should get removed when the PMU sync works?
OK, I'll post the KVM patch at the same time.
I noticed another thing while testing with a virtio-scsi disk; I get
this on output when booting with userspace irqchip
virtio-scsi: Failed to set guest notifiers (-11), ensure -enable-kvm is set
qemu-system-aarch64: virtio_bus_start_ioeventfd: failed. Fallback to userspace
(slower).
Just a warning, but I guess it should be removed, at least when the
user has explicitly asked for a userspace irqchip with kernel-irqchip=no.
Thanks,
drew