diff options
Diffstat (limited to 'c_src')
-rw-r--r-- | c_src/cmd_format.c | 6 | ||||
-rw-r--r-- | c_src/cmd_fsck.c | 2 | ||||
-rw-r--r-- | c_src/cmd_migrate.c | 7 | ||||
-rw-r--r-- | c_src/libbcachefs.c | 16 | ||||
-rw-r--r-- | c_src/libbcachefs.h | 1 | ||||
-rw-r--r-- | c_src/posix_to_bcachefs.c | 2 |
6 files changed, 17 insertions, 17 deletions
diff --git a/c_src/cmd_format.c b/c_src/cmd_format.c index 2d900f1e..d8714888 100644 --- a/c_src/cmd_format.c +++ b/c_src/cmd_format.c @@ -207,9 +207,8 @@ int cmd_format(int argc, char *argv[]) force = true; break; case O_fs_size: - if (bch2_strtoull_h(optarg, &dev_opts.opts.fs_size)) + if (bch2_strtoull_h(optarg, &dev_opts.fs_size)) die("invalid filesystem size"); - dev_opts.opts.fs_size_defined = true; unconsumed_dev_option = true; break; case O_superblock_size: @@ -233,8 +232,7 @@ int cmd_format(int argc, char *argv[]) darray_push(&device_paths, optarg); dev_opts.path = optarg; darray_push(&devices, dev_opts); - dev_opts.opts.fs_size = 0; - dev_opts.opts.fs_size_defined = 0; + dev_opts.fs_size = 0; unconsumed_dev_option = false; break; case O_quiet: diff --git a/c_src/cmd_fsck.c b/c_src/cmd_fsck.c index 3a33ca40..859ec731 100644 --- a/c_src/cmd_fsck.c +++ b/c_src/cmd_fsck.c @@ -326,7 +326,7 @@ kernel_fsck_err: } else { userland_fsck: printf("Running userspace offline fsck\n"); - ret = bch2_parse_mount_opts(NULL, &opts, &parse_later, opts_str.buf); + ret = bch2_parse_mount_opts(NULL, &opts, &parse_later, opts_str.buf, false); if (ret) return ret; diff --git a/c_src/cmd_migrate.c b/c_src/cmd_migrate.c index a0328ca8..8155a2b3 100644 --- a/c_src/cmd_migrate.c +++ b/c_src/cmd_migrate.c @@ -228,9 +228,10 @@ static int migrate_fs(const char *fs_path, printf("Creating new filesystem on %s in space reserved at %s\n", dev->path, file_path); - dev->opts.fs_size = get_size(dev->bdev->bd_fd); - dev->opts.bucket_size = bch2_pick_bucket_size(fs_opts, devs); - dev->nbuckets = dev->opts.fs_size / dev->opts.bucket_size; + dev->fs_size = get_size(dev->bdev->bd_fd); + opt_set(dev->opts, bucket_size, bch2_pick_bucket_size(fs_opts, devs)); + + dev->nbuckets = dev->fs_size / dev->opts.bucket_size; bch2_check_bucket_size(fs_opts, dev); diff --git a/c_src/libbcachefs.c b/c_src/libbcachefs.c index 081a8176..0d19b411 100644 --- a/c_src/libbcachefs.c +++ b/c_src/libbcachefs.c @@ -78,13 +78,13 @@ u64 bch2_pick_bucket_size(struct bch_opts opts, dev_opts_list devs) u64 min_dev_size = BCH_MIN_NR_NBUCKETS * bucket_size; darray_for_each(devs, i) - if (i->opts.fs_size < min_dev_size) + if (i->fs_size < min_dev_size) die("cannot format %s, too small (%llu bytes, min %llu)", - i->path, i->opts.fs_size, min_dev_size); + i->path, i->fs_size, min_dev_size); u64 total_fs_size = 0; darray_for_each(devs, i) - total_fs_size += i->opts.fs_size; + total_fs_size += i->fs_size; struct sysinfo info; si_meminfo(&info); @@ -181,8 +181,8 @@ struct bch_sb *bch2_format(struct bch_opt_strs fs_opt_strs, /* get device size, if it wasn't specified: */ darray_for_each(devs, i) - if (!opt_defined(i->opts, fs_size)) - opt_set(i->opts, fs_size, get_size(i->bdev->bd_fd)); + if (!i->fs_size) + i->fs_size = get_size(i->bdev->bd_fd); /* calculate bucket sizes: */ u64 fs_bucket_size = bch2_pick_bucket_size(fs_opts, devs); @@ -190,10 +190,10 @@ struct bch_sb *bch2_format(struct bch_opt_strs fs_opt_strs, darray_for_each(devs, i) if (!opt_defined(i->opts, bucket_size)) opt_set(i->opts, bucket_size, - min(fs_bucket_size, dev_max_bucket_size(i->opts.fs_size))); + min(fs_bucket_size, dev_max_bucket_size(i->fs_size))); darray_for_each(devs, i) { - i->nbuckets = i->opts.fs_size / i->opts.bucket_size; + i->nbuckets = i->fs_size / i->opts.bucket_size; bch2_check_bucket_size(fs_opts, i); } @@ -292,7 +292,7 @@ struct bch_sb *bch2_format(struct bch_opt_strs fs_opt_strs, bch2_sb_members_cpy_v2_v1(&sb); darray_for_each(devs, i) { - u64 size_sectors = i->opts.fs_size >> 9; + u64 size_sectors = i->fs_size >> 9; sb.sb->dev_idx = i - devs.data; diff --git a/c_src/libbcachefs.h b/c_src/libbcachefs.h index 141a6e8f..619bbbd5 100644 --- a/c_src/libbcachefs.h +++ b/c_src/libbcachefs.h @@ -66,6 +66,7 @@ struct dev_opts { u64 sb_end; u64 nbuckets; + u64 fs_size; const char *label; /* make this a bch_opt */ diff --git a/c_src/posix_to_bcachefs.c b/c_src/posix_to_bcachefs.c index 63aa0937..72ea11b8 100644 --- a/c_src/posix_to_bcachefs.c +++ b/c_src/posix_to_bcachefs.c @@ -6,8 +6,8 @@ #include "posix_to_bcachefs.h" #include "libbcachefs/alloc_foreground.h" #include "libbcachefs/buckets.h" -#include "libbcachefs/fs-common.h" #include "libbcachefs/io_write.h" +#include "libbcachefs/namei.h" #include "libbcachefs/str_hash.h" #include "libbcachefs/xattr.h" |