aboutsummaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorGreg Kurz <groug@kaod.org>2017-06-02 12:09:35 +0200
committerDavid Gibson <david@gibson.dropbear.id.au>2017-06-06 09:22:02 +1000
commita32e900b8abf3541414ef192ef72b6381fde8d0c (patch)
tree6be11735d99152261fe84699adf9da34ad1d427e /hw
parentc4e13492afad2c49d41ec2abf4727c69be637f9f (diff)
downloadqemu-a32e900b8abf3541414ef192ef72b6381fde8d0c.zip
qemu-a32e900b8abf3541414ef192ef72b6381fde8d0c.tar.gz
qemu-a32e900b8abf3541414ef192ef72b6381fde8d0c.tar.bz2
spapr/drc: don't migrate DRC of cold-plugged CPUs and LMBs
As explained in commit 5c0139a8c2f0 ("spapr: fix default DRC state for coldplugged LMBs"), guests expect cold-plugged LMBs to be pre-allocated and unisolated. The same goes for cold-plugged CPUs. While here, let's convert g_assert(false) to the better self documenting g_assert_not_reached(). Signed-off-by: Greg Kurz <groug@kaod.org> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Diffstat (limited to 'hw')
-rw-r--r--hw/ppc/spapr_drc.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/hw/ppc/spapr_drc.c b/hw/ppc/spapr_drc.c
index a35314e..c1d4b10 100644
--- a/hw/ppc/spapr_drc.c
+++ b/hw/ppc/spapr_drc.c
@@ -546,20 +546,16 @@ static bool spapr_drc_needed(void *opaque)
*/
switch (drc->type) {
case SPAPR_DR_CONNECTOR_TYPE_PCI:
- rc = !((drc->isolation_state == SPAPR_DR_ISOLATION_STATE_UNISOLATED) &&
- (drc->allocation_state == SPAPR_DR_ALLOCATION_STATE_USABLE) &&
- drc->configured && drc->signalled && !drc->awaiting_release);
- break;
case SPAPR_DR_CONNECTOR_TYPE_CPU:
case SPAPR_DR_CONNECTOR_TYPE_LMB:
- rc = !((drc->isolation_state == SPAPR_DR_ISOLATION_STATE_ISOLATED) &&
- (drc->allocation_state == SPAPR_DR_ALLOCATION_STATE_UNUSABLE) &&
+ rc = !((drc->isolation_state == SPAPR_DR_ISOLATION_STATE_UNISOLATED) &&
+ (drc->allocation_state == SPAPR_DR_ALLOCATION_STATE_USABLE) &&
drc->configured && drc->signalled && !drc->awaiting_release);
break;
case SPAPR_DR_CONNECTOR_TYPE_PHB:
case SPAPR_DR_CONNECTOR_TYPE_VIO:
default:
- g_assert(false);
+ g_assert_not_reached();
}
return rc;
}