Subject: [RFC PATCH 00/45] KVM: arm/arm64: Rework virtual GIC emulation

From: [email-masked] (Christoffer Dall)
Date: Wed, 30 Mar 2016 21:55:55 +0200

On Wed, Mar 30, 2016 at 01:07:06PM +0100, Marc Zyngier wrote:
> On 30/03/16 12:42, Vladimir Murzin wrote:
> > On 29/03/16 14:12, Vladimir Murzin wrote:
> >> Hi Andre,
> >>
> >> On 25/03/16 02:04, Andre Przywara wrote:
> >>> Please have a look at the series, review it and give the code some
> >>> serious testing (and possibly debugging). All feedback is appreciated.
> >>
> >> I see that with the new vgic implementation kvmtool starts throwing:
> >>
> >> kvm [1273]: Unable to register VGICv3 redist MMIO regions
> >>
> > 
> > It comes from kvm_io_bus_register_dev()
> > 
> > if (bus->dev_count - bus->ioeventfd_count > NR_IOBUS_DEVS - 1)
> > 	return -ENOSPC;
> > 
> > with bus->dev_count being 1000
> 
> Ouch. That's a consequence of having one "device" per actual register
> set, I believe. So either we bump this limit up by a factor 10 (at
> least), or we switch back to the old way of handling access to the GIC
> regions (big "catch-all", and further demuxing).
> 
> Thoughts?
> 
Since we have to have code to iterate through the individual register
regions for the userland MMIO accesses anyway, I think we should just
revert back to the old way.

-Christoffer