Re: klp_task_patch: was: [RFC PATCH v2 17/18] livepatch: change to a per-task consistency model
From: Jiri Kosina
Date: Wed May 04 2016 - 10:56:39 EST
On Wed, 4 May 2016, Petr Mladek wrote:
> > +
> > + if (unlikely(klp_patch_pending(current)))
> > + klp_patch_task(current);
> > }
>
> Some more ideas from the world of crazy races. I was shaking my head
> if this was safe or not.
>
> The problem might be if the task get rescheduled between the check
> for the pending stuff
The code in question is running with preemption disabled.
> or inside the klp_patch_task() function.
We must make sure that this function doesn't go to sleep. It's only used
to clear the task_struct flag anyway.
--
Jiri Kosina
SUSE Labs