NVSL / linux-nova

NOVA is a log-structured file system designed for byte-addressable non-volatile memories, developed at the University of California, San Diego.
http://nvsl.ucsd.edu/index.php?path=projects/nova
Other
422 stars 118 forks source link

Double Flush and Fence issues #133

Closed iaoing closed 2 years ago

iaoing commented 2 years ago
  1. The function nova_update_inode_checksum, Line 395, Line 526, does flush pi with a fence flag. The subsequent nova_flush_buffer function, Line 402, Line 533, does the flush and fence again. https://github.com/NVSL/linux-nova/blob/9b8cfca971d3239e0f837d4d5fdd8d9b6a16e4b9/fs/nova/gc.c#L392-L403

    https://github.com/NVSL/linux-nova/blob/9b8cfca971d3239e0f837d4d5fdd8d9b6a16e4b9/fs/nova/gc.c#L523-L534

  2. Similarly, issuing PERSISTENT_BARRIER after calling nova_update_inode_checksum.

    https://github.com/NVSL/linux-nova/blob/9b8cfca971d3239e0f837d4d5fdd8d9b6a16e4b9/fs/nova/namei.c#L102-L104

Andiry commented 2 years ago

Thanks for the report. Fixed.