ppc/xics: Make the ICSState a list
commitcc706a530518f867c29177a5a337bb08503e617e
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Mon, 3 Oct 2016 07:24:46 +0000 (3 09:24 +0200)
committerDavid Gibson <david@gibson.dropbear.id.au>
Fri, 14 Oct 2016 05:31:02 +0000 (14 16:31 +1100)
treecf47cf0b9c3321bccbcf8c60e35c68c2b719ee51
parent672de881e9367f6d1787901c016c6e836d712f21
ppc/xics: Make the ICSState a list

Instead of an array of fixed sized blocks, use a list, as we will need
to have sources with variable number of interrupts. SPAPR only uses
a single entry. Native will create more. If performance becomes an
issue we can add some hashed lookup but for now this will do fine.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
[ move the initialization of list to xics_common_initfn,
  restore xirr_owner after migration and move restoring to
  icp_post_load]
Signed-off-by: Nikunj A Dadhania <nikunj@linux.vnet.ibm.com>
[ clg: removed the icp_post_load() changes from nikunj patchset v3:
       http://patchwork.ozlabs.org/patch/646008/ ]
Signed-off-by: Cédric Le Goater <clg@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
hw/intc/trace-events
hw/intc/xics.c
hw/intc/xics_kvm.c
hw/intc/xics_spapr.c
hw/ppc/spapr_events.c
hw/ppc/spapr_pci.c
hw/ppc/spapr_vio.c
include/hw/ppc/xics.h