[PATCH 0/3] livepatch/rcu: Handle some subtle issues between livepatching and RCU

Petr Mladek
2017-05-04T10:55:58Z

Steven and Paul recently discussed some issues when using RCU
functionality in ftrace handlers. A good summary can be found at
https://lkml.kernel.org/r/20170412115304.3077dbc8@gandalf.local.home

This discussion made us to revisit the ftrace handler used by
the livepatches. Some changes seem to be needed. A perfect solution
looks rather complicated. I have implemented a sub-optimal
one and split it into three patches for easier review.

Please, note that we were on the safe side before introducing
the hybrid consistency model. The ftrace handler worked correctly
with empty function stack. Also the patch removal was not possible.
But we need to be more careful now.

Petr Mladek (3):
livepatch/rcu: Guarantee consistency when patching idle kthreads
livepatch/rcu: Warn when system consistency is broken in RCU code
livepatch/rcu: Disable livepatch removal when safety is not guaranteed

Documentation/livepatch/livepatch.txt | 19 +++++++++++++++++++
kernel/livepatch/patch.c | 14 ++++++++++++++
kernel/livepatch/transition.c | 7 ++++++-
kernel/livepatch/transition.h | 2 ++
4 files changed, 41 insertions(+), 1 deletion(-)

--
1.8.5.6