From: Jan Kiszka <[email protected]>

It's now functionally identical for both archs.

Signed-off-by: Jan Kiszka <[email protected]>
---
 hypervisor/arch/arm-common/control.c | 13 +++++++++++++
 hypervisor/arch/arm/control.c        | 12 ------------
 hypervisor/arch/arm64/control.c      | 13 -------------
 3 files changed, 13 insertions(+), 25 deletions(-)

diff --git a/hypervisor/arch/arm-common/control.c 
b/hypervisor/arch/arm-common/control.c
index bdb61201c..9bf7e8954 100644
--- a/hypervisor/arch/arm-common/control.c
+++ b/hypervisor/arch/arm-common/control.c
@@ -216,6 +216,19 @@ void arch_cell_reset(struct cell *cell)
        irqchip_cell_reset(cell);
 }
 
+void arch_cell_destroy(struct cell *cell)
+{
+       unsigned int cpu;
+
+       arm_cell_dcaches_flush(cell, DCACHE_INVALIDATE);
+
+       /* All CPUs are handed back to the root cell in suspended mode. */
+       for_each_cpu(cpu, cell->cpu_set)
+               per_cpu(cpu)->cpu_on_entry = PSCI_INVALID_ADDRESS;
+
+       arm_paging_cell_destroy(cell);
+}
+
 /* Note: only supports synchronous flushing as triggered by config_commit! */
 void arch_flush_cell_vcpu_caches(struct cell *cell)
 {
diff --git a/hypervisor/arch/arm/control.c b/hypervisor/arch/arm/control.c
index 505c3b663..16cf53dce 100644
--- a/hypervisor/arch/arm/control.c
+++ b/hypervisor/arch/arm/control.c
@@ -169,15 +169,3 @@ struct registers* arch_handle_exit(struct per_cpu 
*cpu_data,
 
        return regs;
 }
-
-void arch_cell_destroy(struct cell *cell)
-{
-       unsigned int cpu;
-
-       arm_cell_dcaches_flush(cell, DCACHE_INVALIDATE);
-
-       for_each_cpu(cpu, cell->cpu_set)
-               per_cpu(cpu)->cpu_on_entry = PSCI_INVALID_ADDRESS;
-
-       arm_paging_cell_destroy(cell);
-}
diff --git a/hypervisor/arch/arm64/control.c b/hypervisor/arch/arm64/control.c
index 7e4036aef..3109d73ff 100644
--- a/hypervisor/arch/arm64/control.c
+++ b/hypervisor/arch/arm64/control.c
@@ -87,16 +87,3 @@ void arch_panic_park(void)
        arm_write_sysreg(ELR_EL2, 0);
 }
 #endif
-
-void arch_cell_destroy(struct cell *cell)
-{
-       unsigned int cpu;
-
-       arm_cell_dcaches_flush(cell, DCACHE_INVALIDATE);
-
-       /* All CPUs are handed back to the root cell in suspended mode. */
-       for_each_cpu(cpu, cell->cpu_set)
-               per_cpu(cpu)->cpu_on_entry = PSCI_INVALID_ADDRESS;
-
-       arm_paging_cell_destroy(cell);
-}
-- 
2.13.6

-- 
You received this message because you are subscribed to the Google Groups 
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to