1 | /* SPDX-License-Identifier: GPL-2.0 */ |
---|---|
2 | #ifndef _BCACHEFS_JOURNAL_SEQ_BLACKLIST_H |
3 | #define _BCACHEFS_JOURNAL_SEQ_BLACKLIST_H |
4 | |
5 | static inline unsigned |
6 | blacklist_nr_entries(struct bch_sb_field_journal_seq_blacklist *bl) |
7 | { |
8 | return bl |
9 | ? ((vstruct_end(&bl->field) - (void *) &bl->start[0]) / |
10 | sizeof(struct journal_seq_blacklist_entry)) |
11 | : 0; |
12 | } |
13 | |
14 | bool bch2_journal_seq_is_blacklisted(struct bch_fs *, u64, bool); |
15 | int bch2_journal_seq_blacklist_add(struct bch_fs *c, u64, u64); |
16 | int bch2_blacklist_table_initialize(struct bch_fs *); |
17 | |
18 | extern const struct bch_sb_field_ops bch_sb_field_ops_journal_seq_blacklist; |
19 | |
20 | void bch2_blacklist_entries_gc(struct work_struct *); |
21 | |
22 | #endif /* _BCACHEFS_JOURNAL_SEQ_BLACKLIST_H */ |
23 |