[PATCH v4] livepatch: shadow variables

From: Joe Lawrence
Date: Mon Aug 14 2017 - 16:03:30 EST


v4

- klp_shadow_attach(), klp_shadow_get_or_attach(), and
klp_shadow_update_or_attach()
- fix up return values depending on whether a new_shadow
variable was allocated, or an existing one was used
- kfree new_shadow, not shadow_data when shadow variable is found
under the lock (2nd search try)
- refactor away most of the exit labels
- move klp_shadow_set() calls outside of the klp_shadow_lock
- fix multiline comment format

- klp_shadow_attach()
- drop unnecessary variable assignment for conditional

- s/shadow_match()/klp_shadow_match()/g

- klp_shadow_match(), klp_shadow_set(), klp_shadow_add()
- add "caller should hold lock" comments

- Documentation
- remove unnecessary klp_shadow_get() call in use-case
- s/its shadow variable lifetimes/their shadow variables lifetimes/

Joe Lawrence (1):
livepatch: introduce shadow variable API

Documentation/livepatch/shadow-vars.txt | 215 +++++++++++++++++
include/linux/livepatch.h | 10 +
kernel/livepatch/Makefile | 2 +-
kernel/livepatch/shadow.c | 382 ++++++++++++++++++++++++++++++
samples/Kconfig | 5 +-
samples/livepatch/Makefile | 3 +
samples/livepatch/livepatch-shadow-fix1.c | 174 ++++++++++++++
samples/livepatch/livepatch-shadow-fix2.c | 167 +++++++++++++
samples/livepatch/livepatch-shadow-mod.c | 224 ++++++++++++++++++
9 files changed, 1178 insertions(+), 4 deletions(-)
create mode 100644 Documentation/livepatch/shadow-vars.txt
create mode 100644 kernel/livepatch/shadow.c
create mode 100644 samples/livepatch/livepatch-shadow-fix1.c
create mode 100644 samples/livepatch/livepatch-shadow-fix2.c
create mode 100644 samples/livepatch/livepatch-shadow-mod.c

--
1.8.3.1