-enum bucket_data_type {
- BUCKET_DATA = 0,
- BUCKET_BTREE,
- BUCKET_PRIOS,
- BUCKET_JOURNAL,
- BUCKET_SB,
-};
-
-struct bucket_mark {
- union {
- struct {
- u64 counter;
- };
-
- struct {
- u8 gen;
-
- unsigned gen_valid:1;
- unsigned journal_seq_valid:1;
-
- /*
- * If this bucket had metadata while at the current generation
- * number, the allocator must increment its gen before we reuse
- * it:
- */
- unsigned had_metadata:1;
-
- unsigned owned_by_allocator:1;
-
- unsigned data_type:3;
-
- unsigned nouse:1;
-
- u16 dirty_sectors;
- u16 cached_sectors;
-
- /*
- * low bits of journal sequence number when this bucket was most
- * recently modified: if journal_seq_valid is set, this bucket
- * can't be reused until the journal sequence number written to
- * disk is >= the bucket's journal sequence number:
- */
- u16 journal_seq;
- };
- };
-};