lkml.org 
[lkml]   [2023]   [Nov]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v2 26/33] s390/ftrace: Unpoison ftrace_regs in kprobe_ftrace_handler()
    Date
    s390 uses assembly code to initialize ftrace_regs and call
    kprobe_ftrace_handler(). Therefore, from the KMSAN's point of view,
    ftrace_regs is poisoned on kprobe_ftrace_handler() entry. This causes
    KMSAN warnings when running the ftrace testsuite.

    Fix by trusting the assembly code and always unpoisoning ftrace_regs in
    kprobe_ftrace_handler().

    Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
    ---
    arch/s390/kernel/ftrace.c | 1 +
    1 file changed, 1 insertion(+)

    diff --git a/arch/s390/kernel/ftrace.c b/arch/s390/kernel/ftrace.c
    index c46381ea04ec..3bad34eaa51e 100644
    --- a/arch/s390/kernel/ftrace.c
    +++ b/arch/s390/kernel/ftrace.c
    @@ -300,6 +300,7 @@ void kprobe_ftrace_handler(unsigned long ip, unsigned long parent_ip,
    if (bit < 0)
    return;

    + kmsan_unpoison_memory(fregs, sizeof(*fregs));
    regs = ftrace_get_regs(fregs);
    p = get_kprobe((kprobe_opcode_t *)ip);
    if (!regs || unlikely(!p) || kprobe_disabled(p))
    --
    2.41.0
    \
     
     \ /
      Last update: 2023-11-21 23:08    [W:6.089 / U:0.092 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site