Re: [PATCH 1/2] livepatch: Revert "livepatch: enforce patch stacking semantics"

From: Li Bin
Date: Wed Jan 21 2015 - 19:44:48 EST


On 2015/1/21 22:36, Seth Jennings wrote:
> On Wed, Jan 21, 2015 at 03:06:38PM +0100, Jiri Kosina wrote:
>> On Wed, 21 Jan 2015, Li Bin wrote:
>>
>>> This reverts commit 83a90bb1345767f0cb96d242fd8b9db44b2b0e17.
>>>
>>> The method that only allowing the topmost patch on the stack to be
>>> enabled or disabled is unreasonable. Such as the following case:
>>>
>>> - do live patch1
>>> - disable patch1
>>> - do live patch2 //error
>>>
>>> Now, we will never be able to do new live patch unless disabing the
>>> patch1 although there is no dependencies.
>>
>> Unregistering disabled patch still works and removes it from the list no
>> matter the position.
>>
>> So what exactly is the problem?
>
>>From a quick glance, it seems that what this set does is it only
> enforces the stacking requirements if two patches patch the same
> function.
>

Yes, this patch is only concerning this case that 'multi patches patch
the same function' and solve the problem that mentioned previously:

foo_unpatched()
foo_patch1()
foo_patch2()
foo_patch3()
disable(foo_patch2)
disable(foo_patch3)
foo_patch1()

foo_patch2 is not allowed to be disabled before disable foo_patch3.

Thanks,
Li Bin

> I'm not sure if that is correct logically or correctly implemented by
> these patches yet.
>
> Seth
>
>>
>> --
>> Jiri Kosina
>> SUSE Labs
>
> .
>


--
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/