syzbot


KCSAN: data-race in lru_add_drain_all / mark_page_accessed (2)

Status: auto-closed as invalid on 2021/05/20 22:26
Subsystems: mm
[Documentation on labels]
First crash: 1117d, last: 1103d
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream KCSAN: data-race in lru_add_drain_all / mark_page_accessed mm 4 1165d 1204d 0/26 auto-closed as invalid on 2021/03/20 12:45

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

write to 0xffff888237d26668 of 1 bytes by task 15273 on cpu 1:
 pagevec_add include/linux/pagevec.h:74 [inline]
 activate_page mm/swap.c:346 [inline]
 mark_page_accessed+0x36e/0x530 mm/swap.c:431
 zap_pte_range+0x4c7/0xe20 mm/memory.c:1267
 zap_pmd_range mm/memory.c:1374 [inline]
 zap_pud_range mm/memory.c:1403 [inline]
 zap_p4d_range mm/memory.c:1424 [inline]
 unmap_page_range+0x2dc/0x3d0 mm/memory.c:1445
 unmap_single_vma+0x157/0x210 mm/memory.c:1490
 unmap_vmas+0xc0/0x170 mm/memory.c:1522
 exit_mmap+0x1be/0x400 mm/mmap.c:3218
 __mmput+0x27/0x1c0 kernel/fork.c:1090
 mmput+0x3d/0x50 kernel/fork.c:1111
 exit_mm+0x360/0x450 kernel/exit.c:501
 do_exit+0x3ff/0x1560 kernel/exit.c:812
 do_group_exit+0xce/0x1a0 kernel/exit.c:922
 get_signal+0xf83/0x15d0 kernel/signal.c:2781
 arch_do_signal_or_restart+0x2a/0x220 arch/x86/kernel/signal.c:789
 handle_signal_work kernel/entry/common.c:147 [inline]
 exit_to_user_mode_loop kernel/entry/common.c:171 [inline]
 exit_to_user_mode_prepare+0x104/0x170 kernel/entry/common.c:208
 __syscall_exit_to_user_mode_work kernel/entry/common.c:290 [inline]
 syscall_exit_to_user_mode+0x20/0x40 kernel/entry/common.c:301
 do_syscall_64+0x40/0x50 arch/x86/entry/common.c:56
 entry_SYSCALL_64_after_hwframe+0x44/0xae

read to 0xffff888237d26668 of 1 bytes by task 1029 on cpu 0:
 pagevec_count include/linux/pagevec.h:61 [inline]
 need_activate_page_drain mm/swap.c:334 [inline]
 lru_add_drain_all+0x216/0x3c0 mm/swap.c:818
 invalidate_bdev+0x50/0x70 fs/block_dev.c:96
 blk_drop_partitions+0x5e/0x1a0 block/partitions/core.c:545
 bdev_disk_changed+0x58/0x200 fs/block_dev.c:1248
 __blkdev_get+0x2f9/0x6c0 fs/block_dev.c:1354
 blkdev_get_by_dev+0xa4/0x490 fs/block_dev.c:1458
 blkdev_reread_part block/ioctl.c:100 [inline]
 blkdev_common_ioctl+0xc94/0x1010 block/ioctl.c:508
 blkdev_ioctl+0x16e/0x3c0 block/ioctl.c:577
 block_ioctl+0x6d/0x80 fs/block_dev.c:1671
 vfs_ioctl fs/ioctl.c:48 [inline]
 __do_sys_ioctl fs/ioctl.c:753 [inline]
 __se_sys_ioctl+0xcb/0x140 fs/ioctl.c:739
 __x64_sys_ioctl+0x3f/0x50 fs/ioctl.c:739
 do_syscall_64+0x34/0x50 arch/x86/entry/common.c:46
 entry_SYSCALL_64_after_hwframe+0x44/0xae

Reported by Kernel Concurrency Sanitizer on:
CPU: 0 PID: 1029 Comm: systemd-udevd Tainted: G        W         5.12.0-rc7-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
==================================================================

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2021/04/15 22:22 upstream 7f75285ca572 c59079a6 .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in lru_add_drain_all / mark_page_accessed
2021/04/02 09:18 upstream 1678e493d530 6a81331a .config console log report info ci2-upstream-kcsan-gce KCSAN: data-race in lru_add_drain_all / mark_page_accessed
* Struck through repros no longer work on HEAD.