Hacking with the disk’s structures

hammer_disk.h

It seems that adding a new field in the volume header doesn’t change the filesystem behavior, but I can’t add a new field in the blockmap_layer2 structure because it can’t be larger than 16 bytes:

Assertion failed: (sizeof(struct hammer_blockmap_layer2) == 16), function main, file /home/becholey/devel/dragonfly/sbin/newfs_hammer/newfs_hammer.c, line 70.

1 comment so far

  1. Simon Schubert on

    Dillon thinks that there might be many constants (hard-coded or not) which expect the blockmap entry size to be 16. So if we need to change code anyway, we can as well implement our own 2-layer translation system. Possibly much of the existing code can be reused for this, especially if we keep the structure sizes.


Leave a reply