Commit 5b6d40e2 authored by Kent Overstreet's avatar Kent Overstreet Committed by Kent Overstreet

bcachefs: Export correct blocksize to vfs

Signed-off-by: default avatarKent Overstreet <kent.overstreet@linux.dev>
parent a99b1caf
...@@ -1147,7 +1147,8 @@ static int bch2_tmpfile(struct mnt_idmap *idmap, ...@@ -1147,7 +1147,8 @@ static int bch2_tmpfile(struct mnt_idmap *idmap,
return finish_open_simple(file, 0); return finish_open_simple(file, 0);
} }
static int bch2_fill_extent(struct fiemap_extent_info *info, static int bch2_fill_extent(struct bch_fs *c,
struct fiemap_extent_info *info,
struct bkey_s_c k, unsigned flags) struct bkey_s_c k, unsigned flags)
{ {
if (bkey_extent_is_data(k.k)) { if (bkey_extent_is_data(k.k)) {
...@@ -1165,8 +1166,8 @@ static int bch2_fill_extent(struct fiemap_extent_info *info, ...@@ -1165,8 +1166,8 @@ static int bch2_fill_extent(struct fiemap_extent_info *info,
else else
offset += p.crc.offset; offset += p.crc.offset;
if ((offset & (PAGE_SECTORS - 1)) || if ((offset & (c->opts.block_size - 1)) ||
(k.k->size & (PAGE_SECTORS - 1))) (k.k->size & (c->opts.block_size - 1)))
flags2 |= FIEMAP_EXTENT_NOT_ALIGNED; flags2 |= FIEMAP_EXTENT_NOT_ALIGNED;
ret = fiemap_fill_next_extent(info, ret = fiemap_fill_next_extent(info,
...@@ -1223,7 +1224,7 @@ static int bch2_fiemap(struct inode *vinode, struct fiemap_extent_info *info, ...@@ -1223,7 +1224,7 @@ static int bch2_fiemap(struct inode *vinode, struct fiemap_extent_info *info,
if (bkey_extent_is_data(k.k) || if (bkey_extent_is_data(k.k) ||
k.k->type == KEY_TYPE_reservation) { k.k->type == KEY_TYPE_reservation) {
if (have_extent) { if (have_extent) {
ret = bch2_fill_extent(info, ret = bch2_fill_extent(c, info,
bkey_i_to_s_c(&prev.k), 0); bkey_i_to_s_c(&prev.k), 0);
if (ret) if (ret)
break; break;
...@@ -1235,7 +1236,7 @@ static int bch2_fiemap(struct inode *vinode, struct fiemap_extent_info *info, ...@@ -1235,7 +1236,7 @@ static int bch2_fiemap(struct inode *vinode, struct fiemap_extent_info *info,
} }
if (!ret && have_extent) if (!ret && have_extent)
ret = bch2_fill_extent(info, bkey_i_to_s_c(&prev.k), ret = bch2_fill_extent(c, info, bkey_i_to_s_c(&prev.k),
FIEMAP_EXTENT_LAST); FIEMAP_EXTENT_LAST);
ret = bch2_trans_exit(&trans) ?: ret; ret = bch2_trans_exit(&trans) ?: ret;
...@@ -1803,9 +1804,8 @@ static struct dentry *bch2_mount(struct file_system_type *fs_type, ...@@ -1803,9 +1804,8 @@ static struct dentry *bch2_mount(struct file_system_type *fs_type,
goto out; goto out;
} }
/* XXX: blocksize */ sb->s_blocksize = block_bytes(c);
sb->s_blocksize = PAGE_SIZE; sb->s_blocksize_bits = ilog2(block_bytes(c));
sb->s_blocksize_bits = PAGE_SHIFT;
sb->s_maxbytes = MAX_LFS_FILESIZE; sb->s_maxbytes = MAX_LFS_FILESIZE;
sb->s_op = &bch_super_operations; sb->s_op = &bch_super_operations;
sb->s_export_op = &bch_export_ops; sb->s_export_op = &bch_export_ops;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment