[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-ppc] [PULL 10/28] spapr: Don't create ibm, dynamic-reconfiguration
From: |
David Gibson |
Subject: |
[Qemu-ppc] [PULL 10/28] spapr: Don't create ibm, dynamic-reconfiguration-memory w/o DR LMBs |
Date: |
Mon, 25 Jan 2016 12:15:09 +1100 |
From: Bharata B Rao <address@hidden>
If guest doesn't have any dynamically reconfigurable (DR) logical memory
blocks (LMB), then we shouldn't create ibm,dynamic-reconfiguration-memory
device tree node.
Signed-off-by: Bharata B Rao <address@hidden>
Signed-off-by: David Gibson <address@hidden>
---
hw/ppc/spapr.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index 50e5a26..86e5023 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -763,6 +763,13 @@ static int spapr_populate_drconf_memory(sPAPRMachineState
*spapr, void *fdt)
int nr_nodes = nb_numa_nodes ? nb_numa_nodes : 1;
/*
+ * Don't create the node if there are no DR LMBs.
+ */
+ if (!nr_lmbs) {
+ return 0;
+ }
+
+ /*
* Allocate enough buffer size to fit in ibm,dynamic-memory
* or ibm,associativity-lookup-arrays
*/
@@ -868,7 +875,7 @@ int spapr_h_cas_compose_response(sPAPRMachineState *spapr,
_FDT((spapr_fixup_cpu_dt(fdt, spapr)));
}
- /* Generate memory nodes or ibm,dynamic-reconfiguration-memory node */
+ /* Generate ibm,dynamic-reconfiguration-memory node if required */
if (memory_update && smc->dr_lmb_enabled) {
_FDT((spapr_populate_drconf_memory(spapr, fdt)));
}
--
2.5.0
- [Qemu-ppc] [PULL 04/28] macio: add dma_active to VMStateDescription, (continued)
- [Qemu-ppc] [PULL 04/28] macio: add dma_active to VMStateDescription, David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 05/28] mac_dbdma: add DBDMA controller state to VMStateDescription, David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 15/28] pseries: Clean up error handling in spapr_rtas_register(), David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 21/28] target-ppc: gdbstub: fix float registers for little-endian guests, David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 17/28] pseries: Clean up error reporting in ppc_spapr_init(), David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 26/28] pseries: Allow TCG h_enter to work with hotplugged memory, David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 03/28] macio: use the existing IDEDMA aiocb to hold the active DMA aiocb, David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 01/28] target-ppc: Use sensible POWER8/POWER8E versions, David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 09/28] spapr: Remove abuse of rtas_ld() in h_client_architecture_support, David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 02/28] target-ppc: use cpu_write_xer() helper in cpu_post_load, David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 10/28] spapr: Don't create ibm, dynamic-reconfiguration-memory w/o DR LMBs,
David Gibson <=
- [Qemu-ppc] [PULL 16/28] pseries: Clean up error handling in xics_system_init(), David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 18/28] pseries: Clean up error reporting in htab migration functions, David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 06/28] cuda: add missing fields to VMStateDescription, David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 19/28] target-ppc: kvm: fix floating point registers sync on little-endian hosts, David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 13/28] pseries: Clean up error handling in spapr_validate_node_memory(), David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 22/28] target-ppc: gdbstub: introduce avr_need_swap(), David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 12/28] pseries: Clean up error handling of spapr_cpu_init(), David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 11/28] ppc: Clean up error handling in ppc_set_compat(), David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 14/28] pseries: Clean up error handling in spapr_vga_init(), David Gibson, 2016/01/24
- [Qemu-ppc] [PULL 27/28] cuda.c: return error for unknown commands, David Gibson, 2016/01/24