[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <285979BA-2A85-495F-8888-47EAFC061BE9@gmail.com>
Date: Fri, 6 Sep 2024 17:39:46 +0800
From: zhang warden <zhangwarden@...il.com>
To: Josh Poimboeuf <jpoimboe@...nel.org>
Cc: Miroslav Benes <mbenes@...e.cz>,
Jiri Kosina <jikos@...nel.org>,
pmladek@...e.com,
Joe Lawrence <joe.lawrence@...hat.com>,
live-patching@...r.kernel.org,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v4 2/2] livepatch: Add using attribute to klp_func for
using function show
Hi, John & Miroslav
>>
>> Would it be possible to just use klp_transition_patch and implement the
>> logic just in using_show()?
>
> Yes, containing the logic to the sysfs file sounds a lot better.
Maybe I can try to use the state of klp_transition_patch to update the function's state instead of changing code in klp_complete_transition?
>
>> I have not thought through it completely but
>> klp_transition_patch is also an indicator that there is a transition going
>> on. It is set to NULL only after all func->transition are false. So if you
>> check that, you can assign -1 in using_show() immediately and then just
>> look at the top of func_stack.
>
> sysfs already has per-patch 'transition' and 'enabled' files so I don't
> like duplicating that information.
>
> The only thing missing is the patch stack order. How about a simple
> per-patch file which indicates that?
>
> /sys/kernel/livepatch/<patchA>/order => 1
> /sys/kernel/livepatch/<patchB>/order => 2
>
> The implementation should be trivial with the use of
> klp_for_each_patch() to count the patches.
>
I think this is the second solution. It seems that adding an interface to patch level is an acceptable way. And if patch order is provided in /sys/kernel/livepatch/<patchA>/order, we should make a user space tool to calculate the function that is activate in the system. From my point to the original problem, it is more look like a workaround.
> journalctl -b ?
> Store the state in a file in /var/run?
Getting patch order from journal is the way I think not reliable. In fact, I don't recommend to get patch order in that way. ^_^
Thanks!
Wardenjohn
Powered by blists - more mailing lists