summaryrefslogtreecommitdiffstats
path: root/fs/bcachefs/alloc_foreground.h
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2020-07-07 04:33:54 +0200
committerKent Overstreet <kent.overstreet@linux.dev>2023-10-22 23:08:42 +0200
commitf6b94a3baa956ff10a52a545a9ad60f35e88e683 (patch)
treeb973107ffc3a29c6dd0febbb7b8c42faa7bb2e97 /fs/bcachefs/alloc_foreground.h
parentbcachefs: Move stripe creation to workqueue (diff)
downloadlinux-f6b94a3baa956ff10a52a545a9ad60f35e88e683.tar.xz
linux-f6b94a3baa956ff10a52a545a9ad60f35e88e683.zip
bcachefs: Refactor stripe creation
Prep work for the patch to update existing stripes with new data blocks. This moves allocating new stripes into ec.c, and also sets up the data structures so that we can handly only allocating some of the blocks in a stripe. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com> Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'fs/bcachefs/alloc_foreground.h')
-rw-r--r--fs/bcachefs/alloc_foreground.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/bcachefs/alloc_foreground.h b/fs/bcachefs/alloc_foreground.h
index 687f973e4b3a..17a6869bb8cd 100644
--- a/fs/bcachefs/alloc_foreground.h
+++ b/fs/bcachefs/alloc_foreground.h
@@ -92,6 +92,11 @@ static inline void bch2_open_bucket_get(struct bch_fs *c,
}
}
+int bch2_bucket_alloc_set(struct bch_fs *, struct open_buckets *,
+ struct dev_stripe_state *, struct bch_devs_mask *,
+ unsigned, unsigned *, bool *, enum alloc_reserve,
+ unsigned, struct closure *);
+
struct write_point *bch2_alloc_sectors_start(struct bch_fs *,
unsigned, unsigned,
struct write_point_specifier,