syzbot


KCSAN: data-race in __lru_cache_add / lru_add_drain_all

Status: auto-closed as invalid on 2020/07/15 21:39
Subsystems: mm
[Documentation on labels]
Reported-by: syzbot+85c8a31ac01e935a6cf5@syzkaller.appspotmail.com
First crash: 1636d, last: 1412d

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

write to 0xffff88812c129c40 of 1 bytes by task 22117 on cpu 1:
 pagevec_add include/linux/pagevec.h:81 [inline]
 __lru_cache_add+0xb8/0x1c0 mm/swap.c:410
 lru_cache_add+0x1b/0x30 mm/swap.c:447
 add_to_page_cache_lru+0x16b/0x260 mm/filemap.c:937
 pagecache_get_page+0x2b0/0x8c0 mm/filemap.c:1656
 grab_cache_page_write_begin+0x56/0x80 mm/filemap.c:3252
 ext4_da_write_begin+0x1b4/0xa10 fs/ext4/inode.c:2964
 generic_perform_write+0x13a/0x320 mm/filemap.c:3302
 ext4_buffered_write_iter+0x14e/0x280 fs/ext4/file.c:270
 ext4_file_write_iter+0xf4/0xd30 fs/ext4/file.c:642
 call_write_iter include/linux/fs.h:1907 [inline]
 new_sync_write+0x303/0x400 fs/read_write.c:484
 __vfs_write+0x9e/0xb0 fs/read_write.c:497
 vfs_write fs/read_write.c:559 [inline]
 vfs_write+0x189/0x380 fs/read_write.c:543
 ksys_write+0xc5/0x1a0 fs/read_write.c:612
 __do_sys_write fs/read_write.c:624 [inline]
 __se_sys_write fs/read_write.c:621 [inline]
 __x64_sys_write+0x49/0x60 fs/read_write.c:621
 do_syscall_64+0xc7/0x3b0 arch/x86/entry/common.c:295
 entry_SYSCALL_64_after_hwframe+0x44/0xa9

read to 0xffff88812c129c40 of 1 bytes by task 22106 on cpu 0:
 lru_add_drain_all+0x169/0x3a0 mm/swap.c:746
 invalidate_bdev+0x65/0x90 fs/block_dev.c:98
 __loop_clr_fd+0x24e/0x710 drivers/block/loop.c:1162
 loop_clr_fd drivers/block/loop.c:1259 [inline]
 lo_ioctl+0x24a/0xc50 drivers/block/loop.c:1628
 __blkdev_driver_ioctl block/ioctl.c:322 [inline]
 blkdev_ioctl+0x1a1/0x420 block/ioctl.c:718
 block_ioctl+0x91/0xb0 fs/block_dev.c:1996
 vfs_ioctl fs/ioctl.c:47 [inline]
 ksys_ioctl+0x101/0x150 fs/ioctl.c:763
 __do_sys_ioctl fs/ioctl.c:772 [inline]
 __se_sys_ioctl fs/ioctl.c:770 [inline]
 __x64_sys_ioctl+0x47/0x60 fs/ioctl.c:770
 do_syscall_64+0xc7/0x3b0 arch/x86/entry/common.c:295
 entry_SYSCALL_64_after_hwframe+0x44/0xa9

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 PID: 22106 Comm: syz-executor.0 Not tainted 5.7.0-rc1-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
==================================================================

Crashes (68):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/06/10 21:38 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 5caaad3a .config console log report ci2-upstream-kcsan-gce
2020/06/02 17:52 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 52fd7b7d .config console log report ci2-upstream-kcsan-gce
2020/05/27 19:03 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 9072c126 .config console log report ci2-upstream-kcsan-gce
2020/05/22 13:21 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 4afdfa20 .config console log report ci2-upstream-kcsan-gce
2020/05/19 07:03 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 684d3606 .config console log report ci2-upstream-kcsan-gce
2020/05/15 22:08 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 d7f9fffa .config console log report ci2-upstream-kcsan-gce
2020/05/13 10:15 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 9a6d42fb .config console log report ci2-upstream-kcsan-gce
2020/05/12 06:26 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 9eb09c40 .config console log report ci2-upstream-kcsan-gce
2020/05/10 13:55 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 8742a2b9 .config console log report ci2-upstream-kcsan-gce
2020/05/08 16:09 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 fe4122c3 .config console log report ci2-upstream-kcsan-gce
2020/05/06 09:12 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 35b8eb30 .config console log report ci2-upstream-kcsan-gce
2020/04/18 01:18 https://github.com/google/ktsan.git kcsan 7c3cd68e5d38 435c6d53 .config console log report ci2-upstream-kcsan-gce
2020/04/10 02:16 https://github.com/google/ktsan.git kcsan 40959e34d670 a8c6a3f8 .config console log report ci2-upstream-kcsan-gce
2020/04/08 20:26 https://github.com/google/ktsan.git kcsan 40959e34d670 db9bcd4b .config console log report ci2-upstream-kcsan-gce
2020/04/01 11:32 https://github.com/google/ktsan.git kcsan 40959e34d670 a34e2c33 .config console log report ci2-upstream-kcsan-gce
2020/03/23 06:19 https://github.com/google/ktsan.git kcsan 40959e34d670 78267cec .config console log report ci2-upstream-kcsan-gce
2020/03/20 23:05 https://github.com/google/ktsan.git kcsan 40959e34d670 2c31c529 .config console log report ci2-upstream-kcsan-gce
2020/03/15 16:16 https://github.com/google/ktsan.git kcsan 941e0d917bbf 749688d2 .config console log report ci2-upstream-kcsan-gce
2020/03/07 10:03 https://github.com/google/ktsan.git kcsan 941e0d917bbf 2e9971bb .config console log report ci2-upstream-kcsan-gce
2020/03/05 08:53 https://github.com/google/ktsan.git kcsan 766d004d1b85 576fb9bc .config console log report ci2-upstream-kcsan-gce
2020/03/02 09:47 https://github.com/google/ktsan.git kcsan 766d004d1b85 4a4e0509 .config console log report ci2-upstream-kcsan-gce
2020/02/28 00:18 https://github.com/google/ktsan.git kcsan 766d004d1b85 c88c7b75 .config console log report ci2-upstream-kcsan-gce
2020/02/27 19:23 https://github.com/google/ktsan.git kcsan 766d004d1b85 40bcfdd5 .config console log report ci2-upstream-kcsan-gce
2020/02/24 03:44 https://github.com/google/ktsan.git kcsan 766d004d1b85 d801cb02 .config console log report ci2-upstream-kcsan-gce
2020/02/19 11:19 https://github.com/google/ktsan.git kcsan b12d66a6c34f 135c18aa .config console log report ci2-upstream-kcsan-gce
2020/02/18 03:47 https://github.com/google/ktsan.git kcsan b12d66a6c34f 1ce142dc .config console log report ci2-upstream-kcsan-gce
2020/02/12 17:26 https://github.com/google/ktsan.git kcsan f60f0f543333 84f4fc8a .config console log report ci2-upstream-kcsan-gce
2020/02/12 07:54 https://github.com/google/ktsan.git kcsan f60f0f543333 a75b198c .config console log report ci2-upstream-kcsan-gce
2020/02/08 14:45 https://github.com/google/ktsan.git kcsan f60f0f543333 06150bf1 .config console log report ci2-upstream-kcsan-gce
2020/02/06 09:00 https://github.com/google/ktsan.git kcsan 245a43005292 662cf49a .config console log report ci2-upstream-kcsan-gce
2020/02/02 15:22 https://github.com/google/ktsan.git kcsan 245a43005292 93e5e335 .config console log report ci2-upstream-kcsan-gce
2020/01/30 05:42 https://github.com/google/ktsan.git kcsan 245a43005292 5ed23f9a .config console log report ci2-upstream-kcsan-gce
2020/01/27 04:51 https://github.com/google/ktsan.git kcsan 245a43005292 dd56146d .config console log report ci2-upstream-kcsan-gce
2020/01/26 01:26 https://github.com/google/ktsan.git kcsan 245a43005292 f4e7270e .config console log report ci2-upstream-kcsan-gce
2020/01/25 12:59 https://github.com/google/ktsan.git kcsan 245a43005292 2e95ab33 .config console log report ci2-upstream-kcsan-gce
2020/01/21 23:59 https://github.com/google/ktsan.git kcsan 245a43005292 8eda0b95 .config console log report ci2-upstream-kcsan-gce
2020/01/20 18:52 https://github.com/google/ktsan.git kcsan 245a43005292 c40da18c .config console log report ci2-upstream-kcsan-gce
2020/01/19 05:21 https://github.com/google/ktsan.git kcsan 245a43005292 bc8bc756 .config console log report ci2-upstream-kcsan-gce
2020/01/17 02:27 https://github.com/google/ktsan.git kcsan 245a43005292 3de7aabb .config console log report ci2-upstream-kcsan-gce
2020/01/15 01:02 https://github.com/google/ktsan.git kcsan 245a43005292 fa12bd3c .config console log report ci2-upstream-kcsan-gce
2020/01/14 05:16 https://github.com/google/ktsan.git kcsan 245a43005292 32881205 .config console log report ci2-upstream-kcsan-gce
2020/01/12 20:02 https://github.com/google/ktsan.git kcsan 245a43005292 31290a45 .config console log report ci2-upstream-kcsan-gce
2020/01/11 04:57 https://github.com/google/ktsan.git kcsan 245a43005292 4c04afaa .config console log report ci2-upstream-kcsan-gce
2020/01/10 16:08 https://github.com/google/ktsan.git kcsan 245a43005292 532ec44e .config console log report ci2-upstream-kcsan-gce
2020/01/09 15:50 https://github.com/google/ktsan.git kcsan 245a43005292 4de4e9f0 .config console log report ci2-upstream-kcsan-gce
2020/01/08 18:06 https://github.com/google/ktsan.git kcsan 245a43005292 ddc3e859 .config console log report ci2-upstream-kcsan-gce
2020/01/06 20:38 https://github.com/google/ktsan.git kcsan 245a43005292 53430d97 .config console log report ci2-upstream-kcsan-gce
2020/01/02 18:22 https://github.com/google/ktsan.git kcsan 245a43005292 25a0186e .config console log report ci2-upstream-kcsan-gce
2019/12/30 23:03 https://github.com/google/ktsan.git kcsan 245a43005292 6b36d338 .config console log report ci2-upstream-kcsan-gce
2019/12/28 12:58 https://github.com/google/ktsan.git kcsan 245a43005292 af6b8ef8 .config console log report ci2-upstream-kcsan-gce
2019/12/24 07:48 https://github.com/google/ktsan.git kcsan 245a43005292 be5c2c81 .config console log report ci2-upstream-kcsan-gce
2019/12/20 13:20 https://github.com/google/ktsan.git kcsan 245a43005292 34011c05 .config console log report ci2-upstream-kcsan-gce
2019/12/19 14:54 https://github.com/google/ktsan.git kcsan 245a43005292 36650b4b .config console log report ci2-upstream-kcsan-gce
2019/12/18 22:44 https://github.com/google/ktsan.git kcsan 245a43005292 79b211f7 .config console log report ci2-upstream-kcsan-gce
2019/12/17 01:01 https://github.com/google/ktsan.git kcsan 245a43005292 d13d7958 .config console log report ci2-upstream-kcsan-gce
2019/12/15 07:46 https://github.com/google/ktsan.git kcsan 245a43005292 eef6e580 .config console log report ci2-upstream-kcsan-gce
2019/12/11 14:50 https://github.com/google/ktsan.git kcsan ef798c30ba4e 0d368675 .config console log report ci2-upstream-kcsan-gce
2019/12/09 13:03 https://github.com/google/ktsan.git kcsan ef798c30ba4e 1508f453 .config console log report ci2-upstream-kcsan-gce
2019/12/07 12:42 https://github.com/google/ktsan.git kcsan ef798c30ba4e 85f26751 .config console log report ci2-upstream-kcsan-gce
2019/12/06 08:57 https://github.com/google/ktsan.git kcsan ef798c30ba4e 98b4ef2d .config console log report ci2-upstream-kcsan-gce
2019/12/05 21:30 https://github.com/google/ktsan.git kcsan ef798c30ba4e 9fd5a512 .config console log report ci2-upstream-kcsan-gce
2019/11/24 19:52 https://github.com/google/ktsan.git kcsan 5863cc791e4c 598ca6c8 .config console log report ci2-upstream-kcsan-gce
2019/11/20 11:03 https://github.com/google/ktsan.git kcsan 5863cc791e4c 432c7650 .config console log report ci2-upstream-kcsan-gce
2019/11/16 11:57 https://github.com/google/ktsan.git kcsan 5863cc791e4c cdac920b .config console log report ci2-upstream-kcsan-gce
2019/11/13 06:13 https://github.com/google/ktsan.git kcsan 7f2955e0d056 048f2d49 .config console log report ci2-upstream-kcsan-gce
2019/11/07 07:46 https://github.com/google/ktsan.git kcsan 94c006602e13 d797d201 .config console log report ci2-upstream-kcsan-gce
2019/11/04 07:07 https://github.com/google/ktsan.git kcsan 05f2236801fe b35fad31 .config console log report ci2-upstream-kcsan-gce
2019/10/30 17:00 https://github.com/google/ktsan.git kcsan 05f2236801fe 5ea87a66 .config console log report ci2-upstream-kcsan-gce
* Struck through repros no longer work on HEAD.