* Re: [syzbot] [mm?] possible deadlock in __mmap_lock_do_trace_start_locking [not found] <00000000000041df050616f6ba4e@google.com> @ 2024-06-16 14:05 ` syzbot 2024-06-16 16:05 ` Waiman Long 2024-08-28 3:31 ` syzbot 1 sibling, 1 reply; 3+ messages in thread From: syzbot @ 2024-06-16 14:05 UTC (permalink / raw) To: akpm, cgroups, hannes, hawk, linux-kernel, linux-mm, linux-trace-kernel, lizefan.x, mathieu.desnoyers, mhiramat, netdev, rostedt, syzkaller-bugs, tj syzbot has bisected this issue to: commit 21c38a3bd4ee3fb7337d013a638302fb5e5f9dc2 Author: Jesper Dangaard Brouer <hawk@kernel.org> Date: Wed May 1 14:04:11 2024 +0000 cgroup/rstat: add cgroup_rstat_cpu_lock helpers and tracepoints bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=16695261980000 start commit: 36534d3c5453 tcp: use signed arithmetic in tcp_rtx_probe0_.. git tree: bpf final oops: https://syzkaller.appspot.com/x/report.txt?x=15695261980000 console output: https://syzkaller.appspot.com/x/log.txt?x=11695261980000 kernel config: https://syzkaller.appspot.com/x/.config?x=333ebe38d43c42e2 dashboard link: https://syzkaller.appspot.com/bug?extid=6ff90931779bcdfc840c syz repro: https://syzkaller.appspot.com/x/repro.syz?x=1585acfa980000 C reproducer: https://syzkaller.appspot.com/x/repro.c?x=17bdb7ee980000 Reported-by: syzbot+6ff90931779bcdfc840c@syzkaller.appspotmail.com Fixes: 21c38a3bd4ee ("cgroup/rstat: add cgroup_rstat_cpu_lock helpers and tracepoints") For information about bisection process see: https://goo.gl/tpsmEJ#bisection ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [syzbot] [mm?] possible deadlock in __mmap_lock_do_trace_start_locking 2024-06-16 14:05 ` [syzbot] [mm?] possible deadlock in __mmap_lock_do_trace_start_locking syzbot @ 2024-06-16 16:05 ` Waiman Long 0 siblings, 0 replies; 3+ messages in thread From: Waiman Long @ 2024-06-16 16:05 UTC (permalink / raw) To: syzbot, akpm, cgroups, hannes, hawk, linux-kernel, linux-mm, linux-trace-kernel, lizefan.x, mathieu.desnoyers, mhiramat, netdev, rostedt, syzkaller-bugs, tj On 6/16/24 10:05, syzbot wrote: > syzbot has bisected this issue to: > > commit 21c38a3bd4ee3fb7337d013a638302fb5e5f9dc2 > Author: Jesper Dangaard Brouer <hawk@kernel.org> > Date: Wed May 1 14:04:11 2024 +0000 > > cgroup/rstat: add cgroup_rstat_cpu_lock helpers and tracepoints > > bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=16695261980000 > start commit: 36534d3c5453 tcp: use signed arithmetic in tcp_rtx_probe0_.. > git tree: bpf > final oops: https://syzkaller.appspot.com/x/report.txt?x=15695261980000 > console output: https://syzkaller.appspot.com/x/log.txt?x=11695261980000 > kernel config: https://syzkaller.appspot.com/x/.config?x=333ebe38d43c42e2 > dashboard link: https://syzkaller.appspot.com/bug?extid=6ff90931779bcdfc840c > syz repro: https://syzkaller.appspot.com/x/repro.syz?x=1585acfa980000 > C reproducer: https://syzkaller.appspot.com/x/repro.c?x=17bdb7ee980000 > > Reported-by: syzbot+6ff90931779bcdfc840c@syzkaller.appspotmail.com > Fixes: 21c38a3bd4ee ("cgroup/rstat: add cgroup_rstat_cpu_lock helpers and tracepoints") > > For information about bisection process see: https://goo.gl/tpsmEJ#bisection > +static __always_inline +unsigned long _cgroup_rstat_cpu_lock(raw_spinlock_t *cpu_lock, int cpu, + struct cgroup *cgrp, const bool fast_path) +{ + unsigned long flags; + bool contended; + + /* + * The _irqsave() is needed because cgroup_rstat_lock is + * spinlock_t which is a sleeping lock on PREEMPT_RT. Acquiring + * this lock with the _irq() suffix only disables interrupts on + * a non-PREEMPT_RT kernel. The raw_spinlock_t below disables + * interrupts on both configurations. The _irqsave() ensures + * that interrupts are always disabled and later restored. + */ + contended = !raw_spin_trylock_irqsave(cpu_lock, flags); + if (contended) { + if (fast_path) + trace_cgroup_rstat_cpu_lock_contended_fastpath(cgrp, cp> + else + trace_cgroup_rstat_cpu_lock_contended(cgrp, cpu, conten> + + raw_spin_lock_irqsave(cpu_lock, flags); + } I believe the problem may be caused by the fact that trace_cgroup_rstat_cpu_lock_contended*() can be called with IRQ enabled. I had suggested before IRQ should be disabled first before doing any trace operation. See https://lore.kernel.org/linux-mm/203fdb35-f4cf-4754-9709-3c024eecade9@redhat.com/ Doing so may be able to resolve this possible deadlock. Cheers, Longman ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [syzbot] [mm?] possible deadlock in __mmap_lock_do_trace_start_locking [not found] <00000000000041df050616f6ba4e@google.com> 2024-06-16 14:05 ` [syzbot] [mm?] possible deadlock in __mmap_lock_do_trace_start_locking syzbot @ 2024-08-28 3:31 ` syzbot 1 sibling, 0 replies; 3+ messages in thread From: syzbot @ 2024-08-28 3:31 UTC (permalink / raw) To: akpm, axelrasmussen, cgroups, hannes, hawk, linux-kernel, linux-mm, linux-trace-kernel, lizefan.x, longman, mathieu.desnoyers, mhiramat, netdev, penguin-kernel, penguin-kernel, rostedt, syzkaller-bugs, tj syzbot suspects this issue was fixed by commit: commit 7d6be67cfdd4a53cea7147313ca13c531e3a470f Author: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp> Date: Fri Jun 21 01:08:41 2024 +0000 mm: mmap_lock: replace get_memcg_path_buf() with on-stack buffer bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=1412f697980000 start commit: 36534d3c5453 tcp: use signed arithmetic in tcp_rtx_probe0_.. git tree: bpf kernel config: https://syzkaller.appspot.com/x/.config?x=333ebe38d43c42e2 dashboard link: https://syzkaller.appspot.com/bug?extid=6ff90931779bcdfc840c syz repro: https://syzkaller.appspot.com/x/repro.syz?x=1585acfa980000 C reproducer: https://syzkaller.appspot.com/x/repro.c?x=17bdb7ee980000 If the result looks correct, please mark the issue as fixed by replying with: #syz fix: mm: mmap_lock: replace get_memcg_path_buf() with on-stack buffer For information about bisection process see: https://goo.gl/tpsmEJ#bisection ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-08-28 3:31 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <00000000000041df050616f6ba4e@google.com>
2024-06-16 14:05 ` [syzbot] [mm?] possible deadlock in __mmap_lock_do_trace_start_locking syzbot
2024-06-16 16:05 ` Waiman Long
2024-08-28 3:31 ` syzbot
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).