Re: [PATCH] livepatch/rcu: Fix stacking of patches when RCU infrastructure is patched

From: Josh Poimboeuf
Date: Tue May 23 2017 - 13:53:00 EST


On Tue, May 23, 2017 at 05:47:31PM +0200, Petr Mladek wrote:
> diff --git a/kernel/livepatch/patch.c b/kernel/livepatch/patch.c
> index f8269036bf0b..08acba30ecec 100644
> --- a/kernel/livepatch/patch.c
> +++ b/kernel/livepatch/patch.c
> @@ -59,7 +59,11 @@ static void notrace klp_ftrace_handler(unsigned long ip,
>
> ops = container_of(fops, struct klp_ops, fops);
>
> - rcu_read_lock();
> + /*
> + * A variant of synchronize_sched() is used to allow pathing functions
> + * where RCU is not wathing, see klp_synchronize_transition().
> + */
> + preempt_disable_notrace();

s/pathing/patching/
s/wathing/watching/

(and same for the duplicated version of the comment below.)

Otherwise the patch looks promising, though I'll need to stare at it for
a while...

--
Josh