[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen master] livepatch, arm[32|64]: Share arch_livepatch_revert
commit 008a8a029d90feb949c0fa374b4513147d9852d2 Author: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> AuthorDate: Fri Sep 23 11:25:12 2016 -0400 Commit: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> CommitDate: Tue Sep 27 22:07:08 2016 -0400 livepatch, arm[32|64]: Share arch_livepatch_revert It is exactly the same in both platforms. No functional change. Acked-by: Julien Grall <julien.grall@xxxxxxx> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx> --- xen/arch/arm/arm32/livepatch.c | 13 +------------ xen/arch/arm/arm64/livepatch.c | 13 +------------ xen/arch/arm/livepatch.c | 13 +++++++++++++ 3 files changed, 15 insertions(+), 24 deletions(-) diff --git a/xen/arch/arm/arm32/livepatch.c b/xen/arch/arm/arm32/livepatch.c index d9a8caa..a7fd5e2 100644 --- a/xen/arch/arm/arm32/livepatch.c +++ b/xen/arch/arm/arm32/livepatch.c @@ -75,18 +75,7 @@ void arch_livepatch_apply(struct livepatch_func *func) clean_and_invalidate_dcache_va_range(new_ptr, sizeof (*new_ptr) * len); } -void arch_livepatch_revert(const struct livepatch_func *func) -{ - uint32_t *new_ptr; - unsigned int len; - - new_ptr = func->old_addr - (void *)_start + vmap_of_xen_text; - - len = livepatch_insn_len(func); - memcpy(new_ptr, func->opaque, len); - - clean_and_invalidate_dcache_va_range(new_ptr, len); -} +/* arch_livepatch_revert shared with ARM 32/ARM 64. */ int arch_livepatch_verify_elf(const struct livepatch_elf *elf) { diff --git a/xen/arch/arm/arm64/livepatch.c b/xen/arch/arm/arm64/livepatch.c index 558acb9..dae64f5 100644 --- a/xen/arch/arm/arm64/livepatch.c +++ b/xen/arch/arm/arm64/livepatch.c @@ -62,18 +62,7 @@ void arch_livepatch_apply(struct livepatch_func *func) clean_and_invalidate_dcache_va_range(new_ptr, sizeof (*new_ptr) * len); } -void arch_livepatch_revert(const struct livepatch_func *func) -{ - uint32_t *new_ptr; - unsigned int len; - - new_ptr = func->old_addr - (void *)_start + vmap_of_xen_text; - - len = livepatch_insn_len(func); - memcpy(new_ptr, func->opaque, len); - - clean_and_invalidate_dcache_va_range(new_ptr, len); -} +/* arch_livepatch_revert shared with ARM 32/ARM 64. */ int arch_livepatch_verify_elf(const struct livepatch_elf *elf) { diff --git a/xen/arch/arm/livepatch.c b/xen/arch/arm/livepatch.c index dfa285c..de95e54 100644 --- a/xen/arch/arm/livepatch.c +++ b/xen/arch/arm/livepatch.c @@ -69,6 +69,19 @@ int arch_livepatch_verify_func(const struct livepatch_func *func) return 0; } +void arch_livepatch_revert(const struct livepatch_func *func) +{ + uint32_t *new_ptr; + unsigned int len; + + new_ptr = func->old_addr - (void *)_start + vmap_of_xen_text; + + len = livepatch_insn_len(func); + memcpy(new_ptr, func->opaque, len); + + clean_and_invalidate_dcache_va_range(new_ptr, len); +} + void arch_livepatch_post_action(void) { /* arch_livepatch_revive has nuked the instruction cache. */ -- generated by git-patchbot for /home/xen/git/xen.git#master _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxx https://lists.xenproject.org/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |