All of lore.kernel.org
 help / color / mirror / Atom feed
From: syzbot <syzbot+f3c6fda1297c748a7076@syzkaller.appspotmail.com>
To: brauner@kernel.org, hare@suse.de, joel.granados@kernel.org,
	 john.g.garry@oracle.com, kees@kernel.org,
	linux-fsdevel@vger.kernel.org,  linux-kernel@vger.kernel.org,
	linux-mm@kvack.org, mcgrof@kernel.org,
	 syzkaller-bugs@googlegroups.com, willy@infradead.org
Subject: [syzbot] [mm?] [fs?] BUG: sleeping function called from invalid context in folio_mc_copy
Date: Thu, 27 Mar 2025 09:26:41 -0700	[thread overview]
Message-ID: <67e57c41.050a0220.2f068f.0033.GAE@google.com> (raw)

Hello,

syzbot found the following issue on:

HEAD commit:    3ba7dfb8da62 Merge tag 'rcu-next-v6.15' of git://git.kerne..
git tree:       upstream
console output: https://syzkaller.appspot.com/x/log.txt?x=112d4de4580000
kernel config:  https://syzkaller.appspot.com/x/.config?x=81ce17d4cab5b5b4
dashboard link: https://syzkaller.appspot.com/bug?extid=f3c6fda1297c748a7076
compiler:       Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
syz repro:      https://syzkaller.appspot.com/x/repro.syz?x=1597d24c580000
C reproducer:   https://syzkaller.appspot.com/x/repro.c?x=152d4de4580000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/61886896d33d/disk-3ba7dfb8.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/e41306171182/vmlinux-3ba7dfb8.xz
kernel image: https://storage.googleapis.com/syzbot-assets/e056187afb19/bzImage-3ba7dfb8.xz

The issue was bisected to:

commit 3c20917120ce61f2a123ca0810293872f4c6b5a4
Author: Hannes Reinecke <hare@suse.de>
Date:   Fri Feb 21 22:38:21 2025 +0000

    block/bdev: enable large folio support for large logical block sizes

bisection log:  https://syzkaller.appspot.com/x/bisect.txt?x=1393643f980000
final oops:     https://syzkaller.appspot.com/x/report.txt?x=1053643f980000
console output: https://syzkaller.appspot.com/x/log.txt?x=1793643f980000

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+f3c6fda1297c748a7076@syzkaller.appspotmail.com
Fixes: 3c20917120ce ("block/bdev: enable large folio support for large logical block sizes")

BUG: sleeping function called from invalid context at mm/util.c:742
in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 7101, name: syz-executor140
preempt_count: 1, expected: 0
RCU nest depth: 0, expected: 0
2 locks held by syz-executor140/7101:
 #0: ffff888032c2e420 (sb_writers#3){.+.+}-{0:0}, at: direct_splice_actor+0x49/0x220 fs/splice.c:1157
 #1: ffff888148ca65c8 (&mapping->i_private_lock){+.+.}-{3:3}, at: spin_lock include/linux/spinlock.h:351 [inline]
 #1: ffff888148ca65c8 (&mapping->i_private_lock){+.+.}-{3:3}, at: __buffer_migrate_folio+0x241/0x5d0 mm/migrate.c:853
Preemption disabled at:
[<0000000000000000>] 0x0
CPU: 1 UID: 0 PID: 7101 Comm: syz-executor140 Not tainted 6.14.0-syzkaller-00685-g3ba7dfb8da62 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:94 [inline]
 dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120
 __might_resched+0x5d4/0x780 kernel/sched/core.c:8764
 folio_mc_copy+0x13c/0x1d0 mm/util.c:742
 __migrate_folio mm/migrate.c:758 [inline]
 filemap_migrate_folio+0xb4/0x4c0 mm/migrate.c:943
 __buffer_migrate_folio+0x3ec/0x5d0 mm/migrate.c:874
 move_to_new_folio+0x2ac/0xc20 mm/migrate.c:1050
 migrate_folio_move mm/migrate.c:1358 [inline]
 migrate_folios_move mm/migrate.c:1710 [inline]
 migrate_pages_batch+0x1e84/0x30b0 mm/migrate.c:1957
 migrate_pages_sync mm/migrate.c:1987 [inline]
 migrate_pages+0x2007/0x3680 mm/migrate.c:2096
 compact_zone+0x33d5/0x4ae0 mm/compaction.c:2663
 compact_node mm/compaction.c:2932 [inline]
 compact_nodes mm/compaction.c:2954 [inline]
 sysctl_compaction_handler+0x496/0x990 mm/compaction.c:3005
 proc_sys_call_handler+0x5f3/0x950 fs/proc/proc_sysctl.c:601
 iter_file_splice_write+0xbce/0x1510 fs/splice.c:738
 do_splice_from fs/splice.c:935 [inline]
 direct_splice_actor+0x11b/0x220 fs/splice.c:1158
 splice_direct_to_actor+0x586/0xc80 fs/splice.c:1102
 do_splice_direct_actor fs/splice.c:1201 [inline]
 do_splice_direct+0x289/0x3e0 fs/splice.c:1227
 do_sendfile+0x564/0x8a0 fs/read_write.c:1368
 __do_sys_sendfile64 fs/read_write.c:1423 [inline]
 __se_sys_sendfile64+0x100/0x1e0 fs/read_write.c:1415
 do_syscall_x64 arch/x86/entry/common.c:52 [inline]
 do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83
 entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f615c6e5599
Code: 28 00 00 00 75 05 48 83 c4 28 c3 e8 51 18 00 00 90 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b0 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f615c67f218 EFLAGS: 00000246 ORIG_RAX: 0000000000000028
RAX: ffffffffffffffda RBX: 00007f615c76f358 RCX: 00007f615c6e5599
RDX: 00002000000000c0 RSI: 0000000000000006 RDI: 0000000000000007
RBP: 00007f615c76f350 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000009 R11: 0000000000000246 R12: 00007f615c73c074
R13: 0000200000000080 R14: 0000200000000040 R15: 00002000000000c0
 </TASK>


---
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 syzkaller@googlegroups.com.

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.
For information about bisection process see: https://goo.gl/tpsmEJ#bisection

If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title

If you want syzbot to run the reproducer, reply with:
#syz test: git://repo/address.git branch-or-commit-hash
If you attach or paste a git patch, syzbot will apply it before testing.

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

             reply	other threads:[~2025-03-27 16:26 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-03-27 16:26 syzbot [this message]
2025-03-27 21:42 ` [syzbot] [mm?] [fs?] BUG: sleeping function called from invalid context in folio_mc_copy Luis Chamberlain
2025-03-30  2:05   ` Rik van Riel
2025-03-30  2:26     ` Luis Chamberlain
2025-03-30  4:02 ` [syzbot] " syzbot
     [not found] <Z-jCVfGaNHmLVN2i@bombadil.infradead.org>
2025-03-30  4:21 ` syzbot
2025-03-30  4:59   ` Luis Chamberlain

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=67e57c41.050a0220.2f068f.0033.GAE@google.com \
    --to=syzbot+f3c6fda1297c748a7076@syzkaller.appspotmail.com \
    --cc=brauner@kernel.org \
    --cc=hare@suse.de \
    --cc=joel.granados@kernel.org \
    --cc=john.g.garry@oracle.com \
    --cc=kees@kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mcgrof@kernel.org \
    --cc=syzkaller-bugs@googlegroups.com \
    --cc=willy@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.