From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: xen-devel@lists.xenproject.org, konrad@kernel.org,
ross.lagerwall@citrix.com
Cc: julien.grall@arm.com, sstabellini@kernel.org
Subject: [PATCH v1] Livepatch ARM 64 implementation
Date: Sun, 14 Aug 2016 19:07:45 -0400 [thread overview]
Message-ID: <1471216074-3007-1-git-send-email-konrad.wilk@oracle.com> (raw)
Hey!
This is the first (non RFC) posting of the enablement of Livepatch under ARM64.
The patches are based on: [PATCH v3] Livepatch fixes and features for v4.8.
(https://lists.xen.org/archives/html/xen-devel/2016-08/msg01825.html)
And the git tree is:
git://xenbits.xen.org/people/konradwilk/xen.git livepatch.v4.8.v3
I've only tested this under Foundation Platform with only one CPU working
(the other CPUs wouldn't boot up for some reason) and without a proper working
disk image (can't recall why, but it did have an initramfs) - I ended
up building the hypervisor with the livepatch built in and loading it during
dom0 execution (via timers), see
(http://xenbits.xen.org/gitweb/?p=people/konradwilk/xen.git;a=commit;h=39517b2b807025d0d63d4f042ada5eb3de32ff45)
[That patch is not part of this patchset of course]
Please take a look and I hope you will enjoy reviewing the patches!
The patchset contains:
Konrad Rzeszutek Wilk (9):
livepatch: Bubble up sanity checks on Elf relocs
x86/arm: Make 'make debug' work properly.
x86/arm64: Move the ALT_[ORIG|REPL]_PTR macros to header files.
arm/mm: Introduce modify_xen_mappings
arm64/insn: introduce aarch64_insn_gen_{nop|branch_imm}() helper functions
livepatch: Initial ARM64 support.
livepatch: ARM64: Ignore mapping symbols: $[a,d,x,p]
livepatch: Move test-cases to common
livepatch: tests: Make them compile under ARM64
.gitignore | 8 +-
MAINTAINERS | 2 +
xen/Makefile | 4 +-
xen/arch/arm/Makefile | 16 +-
xen/arch/arm/alternative.c | 4 -
xen/arch/arm/arm32/Makefile | 2 +-
xen/arch/arm/arm32/livepatch.c | 55 +++++
xen/arch/arm/arm64/Makefile | 1 +
xen/arch/arm/arm64/insn.c | 61 +++++
xen/arch/arm/arm64/livepatch.c | 247 +++++++++++++++++++++
xen/arch/arm/domain.c | 6 +
xen/arch/arm/livepatch.c | 124 +++++++++--
xen/arch/arm/livepatch.h | 28 +++
xen/arch/arm/mm.c | 21 +-
xen/arch/x86/Makefile | 4 -
xen/arch/x86/livepatch.c | 23 +-
xen/common/Kconfig | 2 +-
xen/common/Makefile | 6 +
xen/common/livepatch.c | 31 ++-
xen/common/livepatch_elf.c | 17 +-
xen/{arch/x86 => common}/test/Makefile | 10 +-
xen/{arch/x86 => common}/test/xen_bye_world.c | 0
xen/{arch/x86 => common}/test/xen_bye_world_func.c | 0
xen/{arch/x86 => common}/test/xen_hello_world.c | 0
.../x86 => common}/test/xen_hello_world_func.c | 7 +-
xen/{arch/x86 => common}/test/xen_replace_world.c | 0
.../x86 => common}/test/xen_replace_world_func.c | 0
xen/include/asm-arm/alternative.h | 4 +
xen/include/asm-arm/arm64/insn.h | 23 ++
xen/include/asm-arm/config.h | 8 +-
xen/include/asm-arm/current.h | 7 +
xen/include/asm-arm/page.h | 11 +
xen/include/asm-x86/alternative.h | 4 +
xen/include/xen/elfstructs.h | 40 +++-
xen/include/xen/livepatch.h | 4 +-
35 files changed, 706 insertions(+), 74 deletions(-)
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
next reply other threads:[~2016-08-14 23:08 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-14 23:07 Konrad Rzeszutek Wilk [this message]
2016-08-14 23:07 ` [PATCH v1 1/9] livepatch: Bubble up sanity checks on Elf relocs Konrad Rzeszutek Wilk
2016-08-17 11:56 ` Jan Beulich
2016-08-14 23:07 ` [PATCH v1 2/9] x86/arm: Make 'make debug' work properly Konrad Rzeszutek Wilk
2016-08-17 12:00 ` Jan Beulich
2016-08-22 17:05 ` Konrad Rzeszutek Wilk
2016-08-14 23:07 ` [PATCH v1 3/9] x86/arm64: Move the ALT_[ORIG|REPL]_PTR macros to header files Konrad Rzeszutek Wilk
2016-08-17 12:15 ` Jan Beulich
2016-08-17 16:26 ` Julien Grall
2016-08-14 23:07 ` [PATCH v1 4/9] arm/mm: Introduce modify_xen_mappings Konrad Rzeszutek Wilk
2016-08-17 16:54 ` Julien Grall
2016-08-14 23:07 ` [PATCH v1 5/9] arm64/insn: introduce aarch64_insn_gen_{nop|branch_imm}() helper functions Konrad Rzeszutek Wilk
2016-08-14 23:07 ` [PATCH v1 6/9] livepatch: Initial ARM64 support Konrad Rzeszutek Wilk
2016-08-15 8:21 ` Jan Beulich
2016-08-15 14:09 ` Konrad Rzeszutek Wilk
2016-08-15 14:23 ` Jan Beulich
2016-08-15 14:57 ` Julien Grall
2016-08-15 15:17 ` Konrad Rzeszutek Wilk
2016-08-15 15:25 ` Julien Grall
2016-08-15 15:27 ` Andrew Cooper
2016-08-17 2:45 ` Konrad Rzeszutek Wilk
2016-08-17 9:02 ` Andrew Cooper
2016-08-15 15:17 ` Julien Grall
2016-08-17 1:50 ` Konrad Rzeszutek Wilk
2016-08-17 19:44 ` Julien Grall
2016-08-17 17:12 ` Julien Grall
2016-08-17 18:22 ` Julien Grall
2016-08-17 18:57 ` Konrad Rzeszutek Wilk
2016-08-17 19:50 ` Julien Grall
2016-08-22 19:22 ` Konrad Rzeszutek Wilk
2016-08-24 2:14 ` Konrad Rzeszutek Wilk
2016-08-25 13:54 ` Julien Grall
2016-08-14 23:07 ` [PATCH v1 7/9] livepatch: ARM64: Ignore mapping symbols: $[a, d, x, p] Konrad Rzeszutek Wilk
2016-08-17 12:21 ` Jan Beulich
2016-08-22 17:14 ` Konrad Rzeszutek Wilk
2016-08-14 23:07 ` [PATCH v1 8/9] livepatch: Move test-cases to common Konrad Rzeszutek Wilk
2016-08-17 12:24 ` Jan Beulich
2016-08-14 23:07 ` [PATCH v1 9/9] livepatch: tests: Make them compile under ARM64 Konrad Rzeszutek Wilk
2016-08-17 18:29 ` Julien Grall
2016-08-17 19:00 ` Konrad Rzeszutek Wilk
2016-08-17 19:57 ` Julien Grall
2016-08-17 20:08 ` Andrew Cooper
2016-08-18 10:38 ` Jan Beulich
2016-08-22 17:41 ` Konrad Rzeszutek Wilk
2016-08-22 19:59 ` Konrad Rzeszutek Wilk
2016-08-15 14:52 ` [PATCH v1] Livepatch ARM 64 implementation Julien Grall
2016-08-15 15:49 ` Konrad Rzeszutek Wilk
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=1471216074-3007-1-git-send-email-konrad.wilk@oracle.com \
--to=konrad.wilk@oracle.com \
--cc=julien.grall@arm.com \
--cc=konrad@kernel.org \
--cc=ross.lagerwall@citrix.com \
--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).