loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated ================================================================== BUG: KCSAN: data-race in drop_nlink / generic_fillattr write to 0xffff888104b45898 of 4 bytes by task 14688 on cpu 1: drop_nlink+0x37/0x90 fs/inode.c:305 shmem_unlink+0x1ab/0x1d0 mm/shmem.c:2935 vfs_unlink+0x24a/0x400 fs/namei.c:4035 do_unlinkat+0x238/0x4f0 fs/namei.c:4102 __do_sys_unlink fs/namei.c:4149 [inline] __se_sys_unlink fs/namei.c:4147 [inline] __x64_sys_unlink+0x2c/0x30 fs/namei.c:4147 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x3d/0x90 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae read to 0xffff888104b45898 of 4 bytes by task 1039 on cpu 0: generic_fillattr+0x76/0x190 fs/stat.c:49 shmem_getattr+0x231/0x250 mm/shmem.c:1048 vfs_getattr_nosec+0x152/0x2f0 fs/stat.c:105 vfs_getattr fs/stat.c:142 [inline] vfs_fstat fs/stat.c:164 [inline] __do_sys_newfstat fs/stat.c:404 [inline] __se_sys_newfstat+0x94/0x2c0 fs/stat.c:401 __x64_sys_newfstat+0x2d/0x40 fs/stat.c:401 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x3d/0x90 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x44/0xae value changed: 0x00000001 -> 0x00000000 Reported by Kernel Concurrency Sanitizer on: CPU: 0 PID: 1039 Comm: systemd-udevd Not tainted 5.14.0-rc5-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 ================================================================== loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated loop5: p1 start 10 is beyond EOD, truncated loop5: p2 start 25 is beyond EOD, truncated loop5: p3 start 9 is beyond EOD, truncated loop5: p4 size 2 extends beyond EOD, truncated loop5: p5 start 10 is beyond EOD, truncated loop5: p6 start 9 is beyond EOD, truncated loop5: p1 p2 < > p3 p4 < p5 p6 > loop5: partition table partially beyond EOD, truncated