#include "bcachefs.h"
#include "buckets_waiting_for_journal.h"
#include <linux/hash.h>
#include <linux/random.h>
static inline struct bucket_hashed *
bucket_hash(struct buckets_waiting_for_journal_table *t,
unsigned hash_seed_idx, u64 dev_bucket)
{ … }
static void bucket_table_init(struct buckets_waiting_for_journal_table *t, size_t bits)
{ … }
bool bch2_bucket_needs_journal_commit(struct buckets_waiting_for_journal *b,
u64 flushed_seq,
unsigned dev, u64 bucket)
{ … }
static bool bucket_table_insert(struct buckets_waiting_for_journal_table *t,
struct bucket_hashed *new,
u64 flushed_seq)
{ … }
int bch2_set_bucket_needs_journal_commit(struct buckets_waiting_for_journal *b,
u64 flushed_seq,
unsigned dev, u64 bucket,
u64 journal_seq)
{ … }
void bch2_fs_buckets_waiting_for_journal_exit(struct bch_fs *c)
{ … }
#define INITIAL_TABLE_BITS …
int bch2_fs_buckets_waiting_for_journal_init(struct bch_fs *c)
{ … }