Re: [PATCH v4] livepatch/module: Correctly handle coming and going modules

From: Rusty Russell
Date: Mon Mar 16 2015 - 21:59:14 EST


Jiri Kosina <jkosina@xxxxxxx> writes:
> On Thu, 12 Mar 2015, Petr Mladek wrote:
>
>> There is a notifier that handles live patches for coming and going modules.
>> It takes klp_mutex lock to avoid races with coming and going patches but
>> it does not keep the lock all the time. Therefore the following races are
>> possible:
> [ ... snip ... ]
>> diff --git a/include/linux/module.h b/include/linux/module.h
>> index b653d7c0a05a..7232fde6a991 100644
>> --- a/include/linux/module.h
>> +++ b/include/linux/module.h
>> @@ -344,6 +344,10 @@ struct module {
>> unsigned long *ftrace_callsites;
>> #endif
>>
>> +#ifdef CONFIG_LIVEPATCH
>> + bool klp_alive;
>> +#endif
>> +
>
> Rusty, are you okay with this please? I'd like to have the race fixed in
> 4.0 still, but don't want to be making changes to struct module without
> your ack.

I look at the amount of explanation and discussion around these patches
and I fear the complexity of what you're doing.

But not enough to rewrite it myself, so:

Acked-by: Rusty Russell <rusty@xxxxxxxxxxxxxxx>

Good luck!
Rusty.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/