qemu-ppc
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-ppc] [RFC PATCH 5/9] spapr: Only setup HTP if necessary.


From: Sam Bobroff
Subject: [Qemu-ppc] [RFC PATCH 5/9] spapr: Only setup HTP if necessary.
Date: Tue, 7 Feb 2017 13:56:48 +1100

Because KVM cannot support radix and hash modes concurrently, QEMU can
avoid allocating a hash page table if KVM supports radix mode.

Signed-off-by: Sam Bobroff <address@hidden>
---
 hw/ppc/spapr.c | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index d629e2630c..1411e470c0 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -1150,15 +1150,17 @@ static void ppc_spapr_reset(void)
     /* Check for unknown sysbus devices */
     foreach_dynamic_sysbus_device(find_unknown_sysbus_device, NULL);
 
-    /* Allocate and/or reset the hash page table */
-    spapr_reallocate_hpt(spapr,
+    if (!kvmppc_has_cap_mmu_radix()) {
+        /* Allocate and/or reset the hash page table */
+        spapr_reallocate_hpt(spapr,
                          spapr_hpt_shift_for_ramsize(machine->maxram_size),
                          &error_fatal);
 
-    /* Update the RMA size if necessary */
-    if (spapr->vrma_adjust) {
-        spapr->rma_size = kvmppc_rma_size(spapr_node0_size(),
-                                          spapr->htab_shift);
+        /* Update the RMA size if necessary */
+        if (spapr->vrma_adjust) {
+            spapr->rma_size = kvmppc_rma_size(spapr_node0_size(),
+                                              spapr->htab_shift);
+        }
     }
 
     qemu_devices_reset();
-- 
2.11.0




reply via email to

[Prev in Thread] Current Thread [Next in Thread]