Re: [syzbot] Re: 000000000000fcfa6406141cc8ac@xxxxxxxxxx

From: syzbot
Date: Thu Jun 06 2024 - 08:16:45 EST


For archival purposes, forwarding an incoming command email to
linux-kernel@xxxxxxxxxxxxxxx, syzkaller-bugs@xxxxxxxxxxxxxxxx.

***

Subject: Re: 000000000000fcfa6406141cc8ac@xxxxxxxxxx
Author: wojciech.gladysz@xxxxxxxxxxxx


#syz test https://linux.googlesource.com/linux/kernel/git/torvalds/linux e377d803b65ee4130213b3c041fc25fdfec1bd90

--- a/kernel/trace/bpf_trace.c
+++ b/kernel/trace/bpf_trace.c
     cant_sleep();

     // return if instrumentation disabled, see: bpf_disable_instrumentation
-     if (unlikely(__this_cpu_read(bpf_prog_active))) {
+     int instrumentation = unlikely(__this_cpu_read(bpf_prog_active));
+     if (instrumentation) {
+           printk("SKIP FOR INSTRUMENTATION: %s > %s > %p /%i ==============\n",
+                       prog->aux->name,
+                       link->btp->tp->name, prog, instrumentation);
           bpf_prog_inc_misses_counter(prog);
           return;
     }

-     if (unlikely(this_cpu_inc_return(*(prog->active)) != 1)) {
+     int active = this_cpu_inc_return(*(prog->active));
+     // printk("%s > %s > %p /%i\n", prog->aux->name, link->btp->tp->name, prog, active);
+     if (active != 1) {
+           printk("SKIP FOR ACTIVE: %s > %s > %p /%i =======================\n",
+                       prog->aux->name,
+                       link->btp->tp->name, prog, active);
           bpf_prog_inc_misses_counter(prog);
           goto out;
     }
--- a/kernel/tracepoint.c
+++ b/kernel/tracepoint.c
{
     if (!tp_funcs)
           return TP_FUNC_0;
+     if (!tp_funcs[0].func)
+           return TP_FUNC_0;
     if (!tp_funcs[1].func)
           return TP_FUNC_1;
     if (!tp_funcs[2].func)
--

The information in this email is confidential and may be legally privileged. It is intended solely for the addressee and access to it by anyone else is unauthorized. If you are not the intended recipient, any disclosure, copying, distribution or any action taken or omitted to be taken based on it, is strictly prohibited and may be unlawful.