[GIT PULL] livepatching for 5.1

From: Jiri Kosina
Date: Tue Mar 05 2019 - 10:08:21 EST


Linus,

please pull from

git://git.kernel.org/pub/scm/linux/kernel/git/livepatching/livepatching.git for-linus

to receive livepatching subsystem updates for 5.1 merge window:

=====
- support for something we call 'atomic replace', and allows for much
better handling of cumulative patches (which is something very useful
for distros), from Jason Baron with help of Petr Mladek and Jason Baron.
- improvement of handling of tasks blocking finalization, from Miroslav
Benes
- update of MAINTAINERS file to reflect move towards group maintainership
=====

Thanks.

----------------------------------------------------------------
Alice Ferrazzi (1):
livepatch: core: Return EOPNOTSUPP instead of ENOSYS

Jason Baron (2):
livepatch: Use lists to manage patches, objects and functions
livepatch: Add atomic replace

Jiri Kosina (1):
livepatch: update MAINTAINERS

Joe Lawrence (4):
selftests/livepatch: introduce tests
selftests/livepatch: add DYNAMIC_DEBUG config dependency
livepatch: return -ENOMEM on ptr_id() allocation failure
livepatch/selftests: use "$@" to preserve argument list

Miroslav Benes (2):
livepatch: Send a fake signal periodically
livepatch: Remove signal sysfs attribute

Nicholas Mc Guire (1):
livepatch: samples: non static warnings fix

Petr Mladek (11):
livepatch: Change unsigned long old_addr -> void *old_func in struct klp_func
livepatch: Shuffle klp_enable_patch()/klp_disable_patch() code
livepatch: Consolidate klp_free functions
livepatch: Don't block the removal of patches loaded after a forced transition
livepatch: Simplify API by removing registration step
livepatch: Remove Nop structures when unused
livepatch: Atomic replace and cumulative patches documentation
livepatch: Remove ordering (stacking) of the livepatches
livepatch: Introduce klp_for_each_patch macro
livepatch: Proper error handling in the shadow variables selftest
livepatch: Module coming and going callbacks can proceed with all listed patches

Documentation/ABI/testing/sysfs-kernel-livepatch | 12 -
Documentation/livepatch/callbacks.txt | 489 +-----------
Documentation/livepatch/cumulative-patches.txt | 102 +++
Documentation/livepatch/livepatch.txt | 182 +++--
MAINTAINERS | 7 +-
include/linux/livepatch.h | 50 +-
kernel/livepatch/core.c | 854 +++++++++++++--------
kernel/livepatch/core.h | 11 +
kernel/livepatch/patch.c | 57 +-
kernel/livepatch/patch.h | 5 +-
kernel/livepatch/transition.c | 124 +--
kernel/livepatch/transition.h | 1 -
lib/Kconfig.debug | 23 +-
lib/Makefile | 2 +
lib/livepatch/Makefile | 15 +
lib/livepatch/test_klp_atomic_replace.c | 57 ++
lib/livepatch/test_klp_callbacks_busy.c | 43 ++
lib/livepatch/test_klp_callbacks_demo.c | 121 +++
lib/livepatch/test_klp_callbacks_demo2.c | 93 +++
lib/livepatch/test_klp_callbacks_mod.c | 24 +
lib/livepatch/test_klp_livepatch.c | 51 ++
lib/livepatch/test_klp_shadow_vars.c | 258 +++++++
samples/livepatch/livepatch-callbacks-demo.c | 13 +-
samples/livepatch/livepatch-sample.c | 13 +-
samples/livepatch/livepatch-shadow-fix1.c | 18 +-
samples/livepatch/livepatch-shadow-fix2.c | 18 +-
samples/livepatch/livepatch-shadow-mod.c | 11 +-
tools/testing/selftests/Makefile | 1 +
tools/testing/selftests/livepatch/Makefile | 8 +
tools/testing/selftests/livepatch/README | 43 ++
tools/testing/selftests/livepatch/config | 1 +
tools/testing/selftests/livepatch/functions.sh | 198 +++++
.../testing/selftests/livepatch/test-callbacks.sh | 587 ++++++++++++++
.../testing/selftests/livepatch/test-livepatch.sh | 168 ++++
.../selftests/livepatch/test-shadow-vars.sh | 60 ++
35 files changed, 2649 insertions(+), 1071 deletions(-)
create mode 100644 Documentation/livepatch/cumulative-patches.txt
create mode 100644 lib/livepatch/Makefile
create mode 100644 lib/livepatch/test_klp_atomic_replace.c
create mode 100644 lib/livepatch/test_klp_callbacks_busy.c
create mode 100644 lib/livepatch/test_klp_callbacks_demo.c
create mode 100644 lib/livepatch/test_klp_callbacks_demo2.c
create mode 100644 lib/livepatch/test_klp_callbacks_mod.c
create mode 100644 lib/livepatch/test_klp_livepatch.c
create mode 100644 lib/livepatch/test_klp_shadow_vars.c
create mode 100644 tools/testing/selftests/livepatch/Makefile
create mode 100644 tools/testing/selftests/livepatch/README
create mode 100644 tools/testing/selftests/livepatch/config
create mode 100644 tools/testing/selftests/livepatch/functions.sh
create mode 100755 tools/testing/selftests/livepatch/test-callbacks.sh
create mode 100755 tools/testing/selftests/livepatch/test-livepatch.sh
create mode 100755 tools/testing/selftests/livepatch/test-shadow-vars.sh

--
Jiri Kosina
SUSE Labs