Closed leeq2016 closed 2 months ago
I need to think a bit about this; Looking through the superblock and log lengths, the handling is a bit inconsistent sometimes using the superblock fields and sometimes using the #defines. The intent is:
Currently there are log_length fields in both the superblock and the log header; having the log length in the superblock is convenient because it always needs to be verified before the log can be mapped - and this can handle a non-invariant log length.
Unless I'm missing something, this change is basically a NOP except that it won't handle a different log length if specified in the superblock.
I think there are two reasons for the modification of this PR:
Regards! :)
The branch/PR I'm working on will be consistent as to how it references superblock and log lengths...
Please take a look at https://github.com/cxl-micron-reskit/famfs/pull/74. It generalizes the configurable log length, and I think it fixes the cache related issues.
It also fixes some buggy code related to FAMFS_ALLOCATION_UNIT, although it does not make that a configurable/superblock parameter (that can happen soon).
Close this PR, this issue will be fixed in #74
The old memory data currently used may be an illegal value, causing famfs to fail to initialize correctly (possibly causing a segfault).