Hello,
syzbot found the following issue on:
HEAD commit: 3a8358583626 Linux 6.1.129
git tree: linux-6.1.y
console output:
https://syzkaller.appspot.com/x/log.txt?x=15637064580000
kernel config:
https://syzkaller.appspot.com/x/.config?x=ff93ecc085d8436e
dashboard link:
https://syzkaller.appspot.com/bug?extid=219127d0a3bce650e1b6
compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
userspace arch: arm64
Unfortunately, I don't have any reproducer for this issue yet.
Downloadable assets:
disk image:
https://storage.googleapis.com/syzbot-assets/3cc3985223b7/disk-3a835858.raw.xz
vmlinux:
https://storage.googleapis.com/syzbot-assets/e40398fb298b/vmlinux-3a835858.xz
kernel image:
https://storage.googleapis.com/syzbot-assets/40469708dc9a/Image-3a835858.gz.xz
IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by:
syzbot+219127...@syzkaller.appspotmail.com
BUG: sleeping function called from invalid context at kernel/locking/rwsem.c:1572
in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 21, name: ksoftirqd/1
preempt_count: 100, expected: 0
RCU nest depth: 0, expected: 0
no locks held by ksoftirqd/1/21.
Preemption disabled at:
[<ffff8000081c3608>] softirq_handle_begin kernel/softirq.c:416 [inline]
[<ffff8000081c3608>] handle_softirqs+0xe0/0xd58 kernel/softirq.c:554
CPU: 1 PID: 21 Comm: ksoftirqd/1 Not tainted 6.1.129-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024
Call trace:
dump_backtrace+0x1c8/0x1f4 arch/arm64/kernel/stacktrace.c:158
show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:165
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0x108/0x170 lib/dump_stack.c:106
dump_stack+0x1c/0x58 lib/dump_stack.c:113
__might_resched+0x37c/0x4d8 kernel/sched/core.c:9957
__might_sleep+0x90/0xe4 kernel/sched/core.c:9886
down_write+0x28/0x88 kernel/locking/rwsem.c:1572
inode_lock include/linux/fs.h:758 [inline]
jfs_fsync+0xa0/0x1c0 fs/jfs/file.c:28
vfs_fsync_range+0x168/0x188 fs/sync.c:188
generic_write_sync include/linux/fs.h:2962 [inline]
dio_complete+0x5c0/0x738 fs/direct-io.c:309
dio_bio_end_aio+0x488/0x550 fs/direct-io.c:364
bio_endio+0x7c8/0x80c block/bio.c:1554
req_bio_endio block/blk-mq.c:780 [inline]
blk_update_request+0x4ac/0xdf0 block/blk-mq.c:925
blk_mq_end_request+0x54/0x88 block/blk-mq.c:1050
lo_complete_rq+0x140/0x258 drivers/block/loop.c:365
blk_complete_reqs block/blk-mq.c:1130 [inline]
blk_done_softirq+0x11c/0x168 block/blk-mq.c:1135
handle_softirqs+0x318/0xd58 kernel/softirq.c:578
run_ksoftirqd+0x6c/0x29c kernel/softirq.c:945
smpboot_thread_fn+0x4b0/0x96c kernel/smpboot.c:164
kthread+0x250/0x2d8 kernel/kthread.c:376
ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:864
=============================
[ BUG: Invalid wait context ]
6.1.129-syzkaller #0 Tainted: G W
-----------------------------
ksoftirqd/1/21 is trying to lock:
ffff0000df158ec0 (&sb->s_type->i_mutex_key#28){+.+.}-{3:3}, at: inode_lock include/linux/fs.h:758 [inline]
ffff0000df158ec0 (&sb->s_type->i_mutex_key#28){+.+.}-{3:3}, at: jfs_fsync+0xa0/0x1c0 fs/jfs/file.c:28
other info that might help us debug this:
context-{2:2}
no locks held by ksoftirqd/1/21.
stack backtrace:
CPU: 1 PID: 21 Comm: ksoftirqd/1 Tainted: G W 6.1.129-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024
Call trace:
dump_backtrace+0x1c8/0x1f4 arch/arm64/kernel/stacktrace.c:158
show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:165
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0x108/0x170 lib/dump_stack.c:106
dump_stack+0x1c/0x58 lib/dump_stack.c:113
print_lock_invalid_wait_context kernel/locking/lockdep.c:4701 [inline]
check_wait_context kernel/locking/lockdep.c:4762 [inline]
__lock_acquire+0x1b14/0x7680 kernel/locking/lockdep.c:4999
lock_acquire+0x26c/0x7cc kernel/locking/lockdep.c:5662
down_write+0x5c/0x88 kernel/locking/rwsem.c:1573
inode_lock include/linux/fs.h:758 [inline]
jfs_fsync+0xa0/0x1c0 fs/jfs/file.c:28
vfs_fsync_range+0x168/0x188 fs/sync.c:188
generic_write_sync include/linux/fs.h:2962 [inline]
dio_complete+0x5c0/0x738 fs/direct-io.c:309
dio_bio_end_aio+0x488/0x550 fs/direct-io.c:364
bio_endio+0x7c8/0x80c block/bio.c:1554
req_bio_endio block/blk-mq.c:780 [inline]
blk_update_request+0x4ac/0xdf0 block/blk-mq.c:925
blk_mq_end_request+0x54/0x88 block/blk-mq.c:1050
lo_complete_rq+0x140/0x258 drivers/block/loop.c:365
blk_complete_reqs block/blk-mq.c:1130 [inline]
blk_done_softirq+0x11c/0x168 block/blk-mq.c:1135
handle_softirqs+0x318/0xd58 kernel/softirq.c:578
run_ksoftirqd+0x6c/0x29c kernel/softirq.c:945
smpboot_thread_fn+0x4b0/0x96c kernel/smpboot.c:164
kthread+0x250/0x2d8 kernel/kthread.c:376
ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:864
BUG: scheduling while atomic: ksoftirqd/1/21/0x00000101
INFO: lockdep is turned off.
Modules linked in:
Preemption disabled at:
[<ffff8000081c3608>] softirq_handle_begin kernel/softirq.c:416 [inline]
[<ffff8000081c3608>] handle_softirqs+0xe0/0xd58 kernel/softirq.c:554
CPU: 1 PID: 21 Comm: ksoftirqd/1 Tainted: G W 6.1.129-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024
Call trace:
dump_backtrace+0x1c8/0x1f4 arch/arm64/kernel/stacktrace.c:158
show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:165
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0x108/0x170 lib/dump_stack.c:106
dump_stack+0x1c/0x58 lib/dump_stack.c:113
__schedule_bug+0x12c/0x1e0 kernel/sched/core.c:5791
schedule_debug kernel/sched/core.c:5818 [inline]
__schedule+0xf8c/0x1d44 kernel/sched/core.c:6453
schedule+0xc4/0x170 kernel/sched/core.c:6636
rwsem_down_write_slowpath+0xc80/0x156c kernel/locking/rwsem.c:1189
__down_write_common kernel/locking/rwsem.c:1314 [inline]
__down_write kernel/locking/rwsem.c:1323 [inline]
down_write+0x84/0x88 kernel/locking/rwsem.c:1574
inode_lock include/linux/fs.h:758 [inline]
jfs_fsync+0xa0/0x1c0 fs/jfs/file.c:28
vfs_fsync_range+0x168/0x188 fs/sync.c:188
generic_write_sync include/linux/fs.h:2962 [inline]
dio_complete+0x5c0/0x738 fs/direct-io.c:309
dio_bio_end_aio+0x488/0x550 fs/direct-io.c:364
bio_endio+0x7c8/0x80c block/bio.c:1554
req_bio_endio block/blk-mq.c:780 [inline]
blk_update_request+0x4ac/0xdf0 block/blk-mq.c:925
blk_mq_end_request+0x54/0x88 block/blk-mq.c:1050
lo_complete_rq+0x140/0x258 drivers/block/loop.c:365
blk_complete_reqs block/blk-mq.c:1130 [inline]
blk_done_softirq+0x11c/0x168 block/blk-mq.c:1135
handle_softirqs+0x318/0xd58 kernel/softirq.c:578
run_ksoftirqd+0x6c/0x29c kernel/softirq.c:945
smpboot_thread_fn+0x4b0/0x96c kernel/smpboot.c:164
kthread+0x250/0x2d8 kernel/kthread.c:376
ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:864
---
This report is generated by a bot. It may contain errors.
See
https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at
syzk...@googlegroups.com.
syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.
If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title
If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)
If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report
If you want to undo deduplication, reply with:
#syz undup