This patch introduce one sysfs attribute of "using" to klp_func. For example, if there are serval patches make changes to function "meminfo_proc_show", the attribute "enabled" of all the patch is 1. With this attribute, we can easily know the version enabling belongs to which patch.
Changes v1 => v2: 1. reset using type from bool to int 2. the value of "using" contains 3 types, 0(not used), 1(using), -1(unknown). (As suggested by Petr). 3. add the process of transition state (-1 state). (suggested by Petr and Miroslav) v1: https://lore.kernel.org/live-patching/1a0e6d0a-4245-4f44-8667-cdd86a925...@gmail.com/T/#t Changes v2 => v3: 1. Move klp_ops defintion into linux/livepatch.h 2. Move klp_ops pointer into klp_func (Suggested by Petr) 3. Rewrite function of klp_find_ops 4. Adjust the newer logic of "using" feature In klp_complete_transition, if patch state is KLP_TRANSITION_PATCHED, we can get the function's next node. If the next node is itself, that means there is only one function. If next node is not equal to the current function node, the next node "using" state can be changed into "0". Changes v3 => v4: Improve the commit log of patch1. Add the reason of klp_find_ops change into commit log. (Suggested by Jiri Kosina) BTW, I remember to use ./script/checkpatch.pl to check my patches..Hah.. :)