linux-next test error: BUG: using smp_processor_id() in preemptible [ADDR] code: kworker/u4:LINE/198

From: syzbot
Date: Sat Jun 06 2020 - 20:03:33 EST


Hello,

syzbot found the following crash on:

HEAD commit: 0e21d462 Add linux-next specific files for 20200602
git tree: linux-next
console output: https://syzkaller.appspot.com/x/log.txt?x=107072f2100000
kernel config: https://syzkaller.appspot.com/x/.config?x=ecc1aef35f550ee3
dashboard link: https://syzkaller.appspot.com/bug?extid=ca020d38a27ddc8e3cae
compiler: gcc (GCC) 9.0.0 20181231 (experimental)

IMPORTANT: if you fix the bug, please add the following tag to the commit:
Reported-by: syzbot+ca020d38a27ddc8e3cae@xxxxxxxxxxxxxxxxxxxxxxxxx

BUG: using smp_processor_id() in preemptible [00000000] code: kworker/u4:4/198
caller is ext4_mb_new_blocks+0xa4d/0x3b70 fs/ext4/mballoc.c:4711
CPU: 0 PID: 198 Comm: kworker/u4:4 Not tainted 5.7.0-next-20200602-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Workqueue: writeback wb_workfn (flush-8:0)
Call Trace:
__dump_stack lib/dump_stack.c:77 [inline]
dump_stack+0x18f/0x20d lib/dump_stack.c:118
check_preemption_disabled+0x20d/0x220 lib/smp_processor_id.c:48
ext4_mb_new_blocks+0xa4d/0x3b70 fs/ext4/mballoc.c:4711
ext4_ext_map_blocks+0x201b/0x33e0 fs/ext4/extents.c:4244
ext4_map_blocks+0x4cb/0x1640 fs/ext4/inode.c:626
mpage_map_one_extent fs/ext4/inode.c:2377 [inline]
mpage_map_and_submit_extent fs/ext4/inode.c:2430 [inline]
ext4_writepages+0x1ab5/0x3400 fs/ext4/inode.c:2782
do_writepages+0xfa/0x2a0 mm/page-writeback.c:2338
__writeback_single_inode+0x12a/0x13d0 fs/fs-writeback.c:1453
writeback_sb_inodes+0x515/0xdc0 fs/fs-writeback.c:1717
__writeback_inodes_wb+0xc3/0x250 fs/fs-writeback.c:1786
wb_writeback+0x8db/0xd50 fs/fs-writeback.c:1895
wb_check_old_data_flush fs/fs-writeback.c:1997 [inline]
wb_do_writeback fs/fs-writeback.c:2050 [inline]
wb_workfn+0xab3/0x1090 fs/fs-writeback.c:2079
process_one_work+0x965/0x1690 kernel/workqueue.c:2269
worker_thread+0x96/0xe10 kernel/workqueue.c:2415
kthread+0x3b5/0x4a0 kernel/kthread.c:291
ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:293
tipc: TX() has been purged, node left!


---
This bug 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@xxxxxxxxxxxxxxxxx

syzbot will keep track of this bug report. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.