diff options
Diffstat (limited to 'libbcachefs/tier.h')
-rw-r--r-- | libbcachefs/tier.h | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/libbcachefs/tier.h b/libbcachefs/tier.h index f8eaa9b0..0c66dfea 100644 --- a/libbcachefs/tier.h +++ b/libbcachefs/tier.h @@ -1,8 +1,23 @@ #ifndef _BCACHEFS_TIER_H #define _BCACHEFS_TIER_H -void bch2_tiering_stop(struct bch_fs *); -int bch2_tiering_start(struct bch_fs *); -void bch2_fs_tiering_init(struct bch_fs *); +static inline void rebalance_wakeup(struct bch_fs *c) +{ + struct task_struct *p; + + rcu_read_lock(); + p = rcu_dereference(c->rebalance_thread); + if (p) + wake_up_process(p); + rcu_read_unlock(); +} + +void bch2_rebalance_add_key(struct bch_fs *, struct bkey_s_c, + struct bch_io_opts *); +void bch2_rebalance_add_work(struct bch_fs *, u64); + +void bch2_rebalance_stop(struct bch_fs *); +int bch2_rebalance_start(struct bch_fs *); +void bch2_fs_rebalance_init(struct bch_fs *); #endif /* _BCACHEFS_TIER_H */ |