All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3] Livepatch fixes and features for v4.8.
@ 2016-08-14 21:52 Konrad Rzeszutek Wilk
  2016-08-14 21:52 ` [PATCH v3 1/9] livepatch: Clear .bss when payload is reverted Konrad Rzeszutek Wilk
                   ` (8 more replies)
  0 siblings, 9 replies; 34+ messages in thread
From: Konrad Rzeszutek Wilk @ 2016-08-14 21:52 UTC (permalink / raw)
  To: xen-devel, konrad, ross.lagerwall

Hey!

This the posting of fixes and various left-overs that didn't get
quite done in 4.7 is marked as v3.


It should have been v2, but I messed up the emails previously
(cover letter said v1, patches said v2), so I figured we can start at v3.

Included are:
 - Bug-fixes
 - Parsing of symbol names encoded as: symbol+0x<offset>/<len>
 - NOP patching
 - Generating an symbol map file with Xen's unique symbols (file#symbol)
   so tools generating livepatch payloads can verify the right names.
 - Hooks

The 'hooks' are the most controversial part of this and are left as the
last patch :-)

In the v2 posting there was a bit of 'const' discussion going back and
forth and we learned that: "gcc has always treated a function marked const
as having no unexpected inputs and no side effects." meaning that:

 livepatch_loadcall_t **load_funcs;

is marked as:
 const livepatch_loadcall_t **load_funcs;
or
 livepatch_loadcall_t const **load_funcs;

Both end up omitting the call to the funcs and the hooks are not called.

Anyhow the git tree `

 git://enbits.xen.org/people/konradwilk/xen.git livepatch.v4.8.v3  

contains all the following patches:

 .gitignore                          |   1 +
 docs/misc/livepatch.markdown        |  31 ++++++-
 xen/Makefile                        |   4 +-
 xen/arch/arm/Makefile               |   3 +
 xen/arch/arm/livepatch.c            |   8 ++
 xen/arch/x86/Makefile               |   4 +
 xen/arch/x86/alternative.c          |   2 +-
 xen/arch/x86/livepatch.c            |  28 ++++--
 xen/arch/x86/test/xen_hello_world.c |  35 +++++++
 xen/common/livepatch.c              | 176 ++++++++++++++++++++++++++++++------
 xen/common/version.c                |   6 +-
 xen/include/asm-x86/alternative.h   |   1 +
 xen/include/xen/livepatch.h         |   3 +-
 xen/include/xen/livepatch_payload.h |  49 ++++++++++
 xen/include/xen/version.h           |   9 ++
 xen/tools/symbols.c                 |  12 ++-
 16 files changed, 325 insertions(+), 47 deletions(-)

Konrad Rzeszutek Wilk (8):
      livepatch: Clear .bss when payload is reverted
      livepatch: Deal with payloads without any .text
      version/livepatch: Move xen_build_id_check to version.h
      livepatch: Sync cache of build-id before using it first time.
      livepatch: Move code from prepare_payload to own routine
      livepatch: Add parsing for the symbol+0x<offset>/<len>
      livepatch: NOP if func->new_[addr,size] is zero.
      symbols: Generate an xen-sym.map

Ross Lagerwall (1):
      livepach: Add .livepatch.hooks functions and test-case


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 34+ messages in thread

end of thread, other threads:[~2016-08-19  9:37 UTC | newest]

Thread overview: 34+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-08-14 21:52 [PATCH v3] Livepatch fixes and features for v4.8 Konrad Rzeszutek Wilk
2016-08-14 21:52 ` [PATCH v3 1/9] livepatch: Clear .bss when payload is reverted Konrad Rzeszutek Wilk
2016-08-15 10:27   ` Jan Beulich
2016-08-15 14:29     ` Konrad Rzeszutek Wilk
2016-08-15 15:10       ` Jan Beulich
2016-08-19  8:37         ` Ross Lagerwall
2016-08-19  8:42           ` Jan Beulich
2016-08-14 21:52 ` [PATCH v3 2/9] livepatch: Deal with payloads without any .text Konrad Rzeszutek Wilk
2016-08-15 10:28   ` Jan Beulich
2016-08-19  9:31   ` Ross Lagerwall
2016-08-14 21:52 ` [PATCH v3 3/9] version/livepatch: Move xen_build_id_check to version.h Konrad Rzeszutek Wilk
2016-08-15 10:35   ` Jan Beulich
2016-08-19  9:29   ` Ross Lagerwall
2016-08-14 21:52 ` [PATCH v3 4/9] livepatch: Sync cache of build-id before using it first time Konrad Rzeszutek Wilk
2016-08-15 10:38   ` Jan Beulich
2016-08-15 10:46     ` Andrew Cooper
2016-08-15 14:33       ` Konrad Rzeszutek Wilk
2016-08-14 21:52 ` [PATCH v3 5/9] livepatch: Move code from prepare_payload to own routine Konrad Rzeszutek Wilk
2016-08-15 10:41   ` Jan Beulich
2016-08-19  9:37   ` Ross Lagerwall
2016-08-14 21:52 ` [PATCH v3 6/9] livepatch: Add parsing for the symbol+0x<offset>/<len> Konrad Rzeszutek Wilk
2016-08-15 10:53   ` Jan Beulich
2016-08-15 14:35     ` Konrad Rzeszutek Wilk
2016-08-15 15:12       ` Jan Beulich
2016-08-15 15:21         ` Konrad Rzeszutek Wilk
2016-08-14 21:52 ` [PATCH v3 7/9] livepatch: NOP if func->new_[addr, size] is zero Konrad Rzeszutek Wilk
2016-08-15 10:59   ` Jan Beulich
2016-08-15 14:38     ` Konrad Rzeszutek Wilk
2016-08-14 21:52 ` [PATCH v3 8/9] symbols: Generate an xen-sym.map Konrad Rzeszutek Wilk
2016-08-15 11:02   ` Jan Beulich
2016-08-14 21:52 ` [PATCH v3 9/9] livepach: Add .livepatch.hooks functions and test-case Konrad Rzeszutek Wilk
2016-08-15 11:15   ` Jan Beulich
2016-08-15 14:46     ` Konrad Rzeszutek Wilk
2016-08-15 15:17       ` Jan Beulich

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.