syzbot


KCSAN: data-race in blkdev_put / blkdev_put

Status: auto-closed as invalid on 2022/06/27 21:38
Subsystems: block
[Documentation on labels]
Reported-by: syzbot+7bedbf121b039aa171b7@syzkaller.appspotmail.com
First crash: 1001d, last: 674d

Sample crash report:
==================================================================
BUG: KCSAN: data-race in blkdev_put / blkdev_put

read-write to 0xffff8881004266a8 of 4 bytes by task 10985 on cpu 0:
 blkdev_put_whole block/bdev.c:686 [inline]
 blkdev_put+0x2c7/0x440 block/bdev.c:947
 blkdev_close+0x32/0x40 block/fops.c:512
 __fput+0x292/0x510 fs/file_table.c:317
 ____fput+0x11/0x20 fs/file_table.c:350
 task_work_run+0x8e/0x110 kernel/task_work.c:164
 resume_user_mode_work include/linux/resume_user_mode.h:49 [inline]
 exit_to_user_mode_loop+0x124/0x130 kernel/entry/common.c:169
 exit_to_user_mode_prepare kernel/entry/common.c:201 [inline]
 __syscall_exit_to_user_mode_work kernel/entry/common.c:283 [inline]
 syscall_exit_to_user_mode+0x6a/0x90 kernel/entry/common.c:294
 do_syscall_64+0x37/0x70 arch/x86/entry/common.c:86
 entry_SYSCALL_64_after_hwframe+0x44/0xae

read to 0xffff8881004266a8 of 4 bytes by task 1440 on cpu 1:
 blkdev_put+0x3b/0x440 block/bdev.c:902
 blkdev_close+0x32/0x40 block/fops.c:512
 __fput+0x292/0x510 fs/file_table.c:317
 ____fput+0x11/0x20 fs/file_table.c:350
 task_work_run+0x8e/0x110 kernel/task_work.c:164
 resume_user_mode_work include/linux/resume_user_mode.h:49 [inline]
 exit_to_user_mode_loop+0x124/0x130 kernel/entry/common.c:169
 exit_to_user_mode_prepare kernel/entry/common.c:201 [inline]
 __syscall_exit_to_user_mode_work kernel/entry/common.c:283 [inline]
 syscall_exit_to_user_mode+0x6a/0x90 kernel/entry/common.c:294
 do_syscall_64+0x37/0x70 arch/x86/entry/common.c:86
 entry_SYSCALL_64_after_hwframe+0x44/0xae

value changed: 0x00000002 -> 0x00000001

Reported by Kernel Concurrency Sanitizer on:
CPU: 1 PID: 1440 Comm: udevd Not tainted 5.18.0-syzkaller-dirty #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
==================================================================
I/O error, dev loop1, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop1, logical block 0, async page read
 loop1: unable to read partition table
loop1: partition table beyond EOD, truncated
I/O error, dev loop5, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop5, logical block 0, async page read
 loop5: unable to read partition table
loop5: partition table beyond EOD, truncated
I/O error, dev loop1, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop1, logical block 0, async page read
 loop1: unable to read partition table
loop1: partition table beyond EOD, truncated
I/O error, dev loop4, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop4, logical block 0, async page read
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
I/O error, dev loop5, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop5, logical block 0, async page read
 loop5: unable to read partition table
loop5: partition table beyond EOD, truncated
I/O error, dev loop4, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop4, logical block 0, async page read
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
 loop0: unable to read partition table
loop0: partition table beyond EOD, truncated
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated
 loop1: unable to read partition table
loop1: partition table beyond EOD, truncated
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated
 loop5: unable to read partition table
loop5: partition table beyond EOD, truncated
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated
 loop0: unable to read partition table
loop0: partition table beyond EOD, truncated
 loop1: unable to read partition table
loop1: partition table beyond EOD, truncated
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
 loop5: unable to read partition table
loop5: partition table beyond EOD, truncated
 loop0: unable to read partition table
loop0: partition table beyond EOD, truncated
 loop0: unable to read partition table
loop0: partition table beyond EOD, truncated
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
 loop5: unable to read partition table
loop5: partition table beyond EOD, truncated
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated
 loop1: unable to read partition table
loop1: partition table beyond EOD, truncated
 loop5: unable to read partition table
loop5: partition table beyond EOD, truncated
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated
blk_print_req_error: 23 callbacks suppressed
I/O error, dev loop4, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
I/O error, dev loop0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
buffer_io_error: 24 callbacks suppressed
Buffer I/O error on dev loop0, logical block 0, async page read
 loop0: unable to read partition table
loop0: partition table beyond EOD, truncated
I/O error, dev loop4, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop4, logical block 0, async page read
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
I/O error, dev loop0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop0, logical block 0, async page read
 loop0: unable to read partition table
loop0: partition table beyond EOD, truncated
I/O error, dev loop1, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop1, logical block 0, async page read
 loop1: unable to read partition table
loop1: partition table beyond EOD, truncated
I/O error, dev loop2, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop2, logical block 0, async page read
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated
I/O error, dev loop1, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop1, logical block 0, async page read
 loop1: unable to read partition table
loop1: partition table beyond EOD, truncated
I/O error, dev loop4, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop4, logical block 0, async page read
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
I/O error, dev loop0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop0, logical block 0, async page read
 loop0: unable to read partition table
loop0: partition table beyond EOD, truncated
I/O error, dev loop0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop0, logical block 0, async page read
 loop0: unable to read partition table
loop0: partition table beyond EOD, truncated
Buffer I/O error on dev loop0, logical block 0, async page read
 loop0: unable to read partition table
loop0: partition table beyond EOD, truncated
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
 loop1: unable to read partition table
loop1: partition table beyond EOD, truncated
 loop0: unable to read partition table
loop0: partition table beyond EOD, truncated
 loop1: unable to read partition table
loop1: partition table beyond EOD, truncated
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated
 loop5: unable to read partition table
loop5: partition table beyond EOD, truncated
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
 loop1: unable to read partition table
loop1: partition table beyond EOD, truncated
 loop0: unable to read partition table
loop0: partition table beyond EOD, truncated
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated
 loop5: unable to read partition table
loop5: partition table beyond EOD, truncated
 loop5: unable to read partition table
loop5: partition table beyond EOD, truncated
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
 loop1: unable to read partition table
loop1: partition table beyond EOD, truncated
 loop5: unable to read partition table
loop5: partition table beyond EOD, truncated
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated
 loop5: unable to read partition table
loop5: partition table beyond EOD, truncated
 loop0: unable to read partition table
loop0: partition table beyond EOD, truncated
 loop0: unable to read partition table
loop0: partition table beyond EOD, truncated
 loop1: unable to read partition table
loop1: partition table beyond EOD, truncated
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
 loop1: unable to read partition table
loop1: partition table beyond EOD, truncated
 loop5: unable to read partition table
loop5: partition table beyond EOD, truncated
 loop5: unable to read partition table
loop5: partition table beyond EOD, truncated
 loop0: unable to read partition table
loop0: partition table beyond EOD, truncated
blk_print_req_error: 30 callbacks suppressed
I/O error, dev loop2, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
buffer_io_error: 29 callbacks suppressed
Buffer I/O error on dev loop2, logical block 0, async page read
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated
I/O error, dev loop4, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop4, logical block 0, async page read
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
I/O error, dev loop2, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop2, logical block 0, async page read
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated
I/O error, dev loop5, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop5, logical block 0, async page read
 loop5: unable to read partition table
loop5: partition table beyond EOD, truncated
I/O error, dev loop2, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop2, logical block 0, async page read
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated
I/O error, dev loop0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop0, logical block 0, async page read
 loop0: unable to read partition table
loop0: partition table beyond EOD, truncated
I/O error, dev loop4, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop4, logical block 0, async page read
 loop4: unable to read partition table
loop4: partition table beyond EOD, truncated
I/O error, dev loop0, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop0, logical block 0, async page read
 loop0: unable to read partition table
loop0: partition table beyond EOD, truncated
I/O error, dev loop2, sector 0 op 0x0:(READ) flags 0x0 phys_seg 1 prio class 0
Buffer I/O error on dev loop2, logical block 0, async page read
 loop2: unable to read partition table
loop2: partition table beyond EOD, truncated

Crashes (384):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2022/05/23 21:37 upstream 4b0986a3613c 4c7657cb .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/23 00:35 upstream 978df3e15846 7268fa62 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/22 16:02 upstream eaea45fc0e7b 7268fa62 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/22 00:59 upstream 6c3f5bec9b40 7268fa62 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/21 00:31 upstream 3d7285a335ed bd37ad7e .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/19 21:07 upstream f993aed406ea cb1ac2e7 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/18 22:31 upstream ef1302160bfb 50c53f39 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/18 16:24 upstream 210e04ff7681 50c53f39 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/18 09:23 upstream 210e04ff7681 744a39e2 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/16 16:13 upstream 42226c989789 744a39e2 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/15 08:29 upstream 2fe1020d73ca 744a39e2 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/14 16:16 upstream ec7f49619d8e 744a39e2 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/13 03:18 upstream 0ac824f379fb 9ad6612a .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/11 08:14 upstream feb9c5e19e91 8d7b3b67 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/10 08:19 upstream 9be9ed2612b5 8b277b8e .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/09 01:58 upstream c5eb0a61238d e60b1103 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/06 06:34 upstream fe27d189e3f4 efeff0a5 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/05 15:32 upstream a7391ad35724 b3f09415 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/03 18:12 upstream ef8e4d3c2ab1 dc9e5259 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/05/03 02:28 upstream 9050ba3a61a4 2df221f6 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/30 19:51 upstream 8013d1d3d2e3 2df221f6 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/29 15:48 upstream 38d741cb70b3 44a5ca63 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/28 19:25 upstream 259b897e5a79 e9076525 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/27 02:57 upstream cf424ef014ac 1fa34c1b .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/24 20:16 upstream 22da5264abf4 131df97d .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/24 00:18 upstream 13bc32bad705 131df97d .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/23 17:48 upstream c00c5e1d157b 131df97d .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/20 20:07 upstream 559089e0a93d d4befee1 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/19 03:21 upstream b2d229d4ddb1 8bcc32a6 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/18 01:35 upstream a2c29ccd9477 8bcc32a6 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/16 15:01 upstream 59250f8a7f3a 8bcc32a6 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/14 18:29 upstream a19944809fe9 b17b2923 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/12 22:18 upstream ce522ba9ef7e dacb3f1c .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/12 07:25 upstream ce522ba9ef7e af01ee7d .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/11 08:37 upstream ce522ba9ef7e e22c3da3 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/10 21:38 upstream 1862a69c9174 e22c3da3 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/10 02:21 upstream e1f700ebd6be e22c3da3 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/09 01:13 upstream 1831fed55973 e22c3da3 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/08 08:26 upstream 42e7a03d3bad c6ff3e05 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/06 18:03 upstream 3e732ebf7316 97582466 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/04 22:37 upstream 312310928417 5915c2cb .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/02 06:11 upstream d0d642a5d365 79a2a8fc .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/01 12:16 upstream e8b767f5e040 68fc921a .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/04/01 00:04 upstream 787af64d05cd c4c32d8c .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2022/03/27 18:15 upstream f022814633e1 89bc8608 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2021/08/07 23:48 upstream 85a90500f9a1 6972b106 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2021/08/04 22:23 upstream 251a1524293d b97d64c9 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
2021/07/01 13:15 upstream dbe69e433722 658ebc66 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in blkdev_put / blkdev_put
* Struck through repros no longer work on HEAD.