Re: [PATCH PATCH 2/2] selftests: livepatch: test if ftrace can trace a livepatched function

From: Filipe Xavier
Date: Tue Mar 18 2025 - 08:32:11 EST


On 3/17/25 6:07 AM, Miroslav Benes wrote:

On Fri, 14 Mar 2025, Filipe Xavier wrote:

On 3/14/25 10:14 AM, Miroslav Benes wrote:

Hi,

+start_test "trace livepatched function and check that the live patch
remains in effect"
+
+FUNCTION_NAME="livepatch_cmdline_proc_show"
+
+load_lp $MOD_LIVEPATCH
+trace_function "$FUNCTION_NAME"
trace_funtion() calls cleanup_ftrace() to prepare the test. Ok.

+if [[ "$(cat /proc/cmdline)" == "$MOD_LIVEPATCH: this has been live
patched" ]] ; then
+ log "livepatch: ok"
+fi
+
+check_traced_function "$FUNCTION_NAME"
+
+cleanup_tracing
Here, I suppose, cleanup_tracing() is called to clean up after the check
above so that nothing stays and more tests can be added later. Right?
Would it make sense then to call cleanup_tracing() in
check_traced_function()? I think it would less error prone.
If needed, check_traced_function() can always be upgraded so that it
checks for more traced functions.
In cases where we need to check two or more functions with
check_traced_function,

if there is cleanup_tracing, it will not be possible, make sense?

e.g: function1 call -> function2 call -> function3.
I meant... check_traced_function() (or check_traced_functions() in this
case) can have multiple arguments. You would loop over them inside and
then clean up. Or did I misunderstood?

I hadn't thought of it that way, it makes perfect sense. I'll send a new version with this adjustment.


Miroslav