>>>> + /* For non-skinny metadata, no special member needed */ >>>> +}; >>>> + >>>> +struct btrfs_ref { >>> >>> The structure name sounds a bit generic, but I think we can keep it >>> short. There are no other btrfs-specific references that could be >>> confused, there are 'backrefs', 'delayed-refs' all refering to the >>> b-tree references. >>> >>>> + enum btrfs_ref_type type; >>>> + int action; >>>> + >>>> + /* >>>> + * Only use parent pointers as backref (SHARED_BLOCK_REF or >>>> + * SHARED_DATA_REF) for this extent and its children. >>>> + * Set for reloc trees. >>>> + */ >>>> + bool only_backreferences:1; >>> >>> No bool bitfields please, wasn't this mentioned last time? >>> >> Oh, I forgot that one. >> >> Do I need to resend or just edit that commit in my github branch? > > No need to resend, I'll edit that as it's a trivial change. I'll have > another look at the whole structure if the layout could be optimized, > eg. the enum takes 4 bytes but we'd be fine with a byte. > Maybe I have already said this before, but I still really hope either we have some external tool to do that for us, or some attribute to do it. Thanks, Qu