==================================================================
BUG: KCSAN: data-race in __percpu_counter_compare / percpu_counter_add_batch

write to 0xffff88810004b3d0 of 8 bytes by task 22941 on cpu 1:
 percpu_counter_add_batch+0x9c/0xd0 lib/percpu_counter.c:91
 percpu_counter_add include/linux/percpu_counter.h:56 [inline]
 percpu_counter_sub include/linux/percpu_counter.h:193 [inline]
 shmem_inode_unacct_blocks mm/shmem.c:244 [inline]
 shmem_recalc_inode mm/shmem.c:371 [inline]
 shmem_undo_range+0xd24/0xe20 mm/shmem.c:1024
 shmem_truncate_range mm/shmem.c:1030 [inline]
 shmem_evict_inode+0x115/0x5a0 mm/shmem.c:1132
 evict+0x1c8/0x3c0 fs/inode.c:584
 iput_final fs/inode.c:1660 [inline]
 iput+0x430/0x580 fs/inode.c:1686
 dentry_unlink_inode+0x23a/0x260 fs/dcache.c:376
 __dentry_kill+0x2af/0x4e0 fs/dcache.c:582
 dentry_kill fs/dcache.c:695 [inline]
 dput+0xc6/0x360 fs/dcache.c:888
 __fput+0x3ab/0x4e0 fs/file_table.c:293
 ____fput+0x11/0x20 fs/file_table.c:313
 task_work_run+0xae/0x130 kernel/task_work.c:164
 tracehook_notify_resume include/linux/tracehook.h:189 [inline]
 exit_to_user_mode_loop kernel/entry/common.c:175 [inline]
 exit_to_user_mode_prepare+0x156/0x190 kernel/entry/common.c:209
 __syscall_exit_to_user_mode_work kernel/entry/common.c:291 [inline]
 syscall_exit_to_user_mode+0x20/0x40 kernel/entry/common.c:302
 do_syscall_64+0x49/0x90 arch/x86/entry/common.c:86
 entry_SYSCALL_64_after_hwframe+0x44/0xae

read to 0xffff88810004b3d0 of 8 bytes by task 22985 on cpu 0:
 percpu_counter_read include/linux/percpu_counter.h:72 [inline]
 __percpu_counter_compare+0x28/0x1a0 lib/percpu_counter.c:225
 percpu_counter_compare include/linux/percpu_counter.h:51 [inline]
 shmem_inode_acct_block mm/shmem.c:225 [inline]
 shmem_alloc_and_acct_page mm/shmem.c:1582 [inline]
 shmem_getpage_gfp+0x84d/0x13d0 mm/shmem.c:1917
 shmem_getpage mm/shmem.c:155 [inline]
 shmem_write_begin+0x7e/0x100 mm/shmem.c:2494
 generic_perform_write+0x196/0x3c0 mm/filemap.c:3656
 __generic_file_write_iter+0x161/0x300 mm/filemap.c:3783
 generic_file_write_iter+0x75/0x130 mm/filemap.c:3815
 call_write_iter include/linux/fs.h:2114 [inline]
 new_sync_write fs/read_write.c:518 [inline]
 vfs_write+0x69d/0x770 fs/read_write.c:605
 ksys_write+0xce/0x180 fs/read_write.c:658
 __do_sys_write fs/read_write.c:670 [inline]
 __se_sys_write fs/read_write.c:667 [inline]
 __x64_sys_write+0x3e/0x50 fs/read_write.c:667
 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: 0x0000000000002804 -> 0x0000000000001823

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