The functions reiserfs_write_full_page() and reiserfs_write_end() are concurrently executed at runtime in the following call contexts: Thread 1: reiserfs_writepage() reiserfs_write_full_page() Thread 2: reiserfs_write_end() In reiserfs_write_full_page(): unsigned long end_index = inode->i_size >> PAGE_SHIFT; In reiserfs_write_end(): inode->i_size = pos + copied; Thus, a data race on inode->i_size occurs. This data race was found and actually reproduced by our concurrency fuzzer. I am not sure whether this data race is harmful and how to fix this data race properly, so I want to listen to your opinions, thanks :)