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.
