• Chris Mason's avatar
    [PATCH] Fix reiserfs inode size update race · 77124e4c
    Chris Mason authored
    reiserfs_file_write unlocks the pages it operated on before updating
    i_size.  This can lead to races with writepage, who checks i_size when
    deciding how much of the file to zero out.
    
    This patch also replaces SetPageReferenced with mark_page_accessed() in
    reiserfs_file_write
    
    This was verified to fix the BitKeeper data corruption problems that
    Steven Cole has been debugging, where concurrent writes to a file and
    writebacks to disk would cause zeroes in the file when CONFIG_PREEMPT
    was enabled.
    77124e4c
file.c 49 KB