From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: xen-devel@lists.xenproject.org, konrad@kernel.org,
sstabellini@kernel.org, julien.grall@arm.com
Subject: [Very RFC PATCH] Livepatch - initial ARM64/32 support.
Date: Tue, 9 Aug 2016 00:18:57 -0400 [thread overview]
Message-ID: <1470716340-24474-1-git-send-email-konrad.wilk@oracle.com> (raw)
Hey!
Over the last couple of months in my spare time I was playing
with making livepatch work with ARM64 (using the FoundationModel
simulator) and I finally got it working tonight.
Sending out the patches just in case they don't work tomorrow :-)
The ARM32 part is going slowly - as I don't have a simulator
and using a real board takes time.
As you can see from the diffstat there is some room
for improvement:
- The 'tests' - they are now in x86 and arm - and they are quite
similar. My thinking is to move them to 'common' ?
- There is room to unify some of the ELF relocation checks as
they are exactly the same across architectures.
There is also an ugly implementation of modify_xen_mappings.
I am hoping the ARM maintainers could provide some input on
how they would like me to implement this.
Thanks!
xen/arch/arm/Makefile | 14 +-
xen/arch/arm/arm32/Makefile | 2 +-
xen/arch/arm/arm32/livepatch.c | 150 ++++++++++++++++
xen/arch/arm/arm64/Makefile | 1 +
xen/arch/arm/arm64/insn.c | 41 +++++
xen/arch/arm/arm64/livepatch.c | 268 +++++++++++++++++++++++++++++
xen/arch/arm/livepatch.c | 84 ++++++---
xen/arch/arm/mm.c | 28 ++-
xen/arch/arm/test/Makefile | 85 +++++++++
xen/arch/arm/test/xen_bye_world.c | 34 ++++
xen/arch/arm/test/xen_bye_world_func.c | 22 +++
xen/arch/arm/test/xen_hello_world.c | 69 ++++++++
xen/arch/arm/test/xen_hello_world_func.c | 26 +++
xen/arch/arm/test/xen_replace_world.c | 33 ++++
xen/arch/arm/test/xen_replace_world_func.c | 22 +++
xen/common/Kconfig | 2 +-
xen/common/livepatch.c | 12 +-
xen/include/asm-arm/arm64/insn.h | 2 +
xen/include/asm-arm/current.h | 7 +
xen/include/asm-arm/mm.h | 1 +
xen/include/xen/elfstructs.h | 35 ++++
21 files changed, 905 insertions(+), 33 deletions(-)
Konrad Rzeszutek Wilk (3):
mm/arm: Introduce modify_xen_mappings
insn: Add arch64_insn_gen_branch_imm to generate branch
livepatch: Initial ARM32/64 support.
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
next reply other threads:[~2016-08-09 4:19 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-09 4:18 Konrad Rzeszutek Wilk [this message]
2016-08-09 4:18 ` [Very RFC PATCH 1/3] mm/arm: Introduce modify_xen_mappings Konrad Rzeszutek Wilk
2016-08-09 4:18 ` [Very RFC PATCH 2/3] insn: Add arch64_insn_gen_branch_imm to generate branch Konrad Rzeszutek Wilk
2016-08-11 16:03 ` Julien Grall
2016-08-09 4:19 ` [Very RFC PATCH 3/3] livepatch: Initial ARM32/64 support Konrad Rzeszutek Wilk
2016-08-12 15:00 ` Julien Grall
2016-08-12 20:50 ` Konrad Rzeszutek Wilk
2016-08-15 13:27 ` Julien Grall
2016-08-15 15:04 ` Konrad Rzeszutek Wilk
2016-08-09 4:24 ` [Very RFC PATCH] Livepatch - initial ARM64/32 support Konrad Rzeszutek Wilk
2016-08-11 16:28 ` Julien Grall
2016-08-11 19:05 ` Stefano Stabellini
2016-08-11 23:08 ` Konrad Rzeszutek Wilk
2016-08-12 8:08 ` Julien Grall
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1470716340-24474-1-git-send-email-konrad.wilk@oracle.com \
--to=konrad.wilk@oracle.com \
--cc=julien.grall@arm.com \
--cc=konrad@kernel.org \
--cc=sstabellini@kernel.org \
--cc=xen-devel@lists.xenproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).