diff options
Diffstat (limited to 'make-bcache.c')
-rw-r--r-- | make-bcache.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/make-bcache.c b/make-bcache.c index 27d49eb9..9e55fac1 100644 --- a/make-bcache.c +++ b/make-bcache.c @@ -171,7 +171,8 @@ static void write_sb(char *dev, unsigned block_size, unsigned bucket_size, bool writeback, bool discard, bool wipe_bcache, unsigned cache_replacement_policy, uint64_t data_offset, - uuid_t set_uuid, bool bdev) + uuid_t set_uuid, bool bdev, + uint16_t nr_in_set, uint16_t nr_this_dev) { int fd; char uuid_str[40], set_uuid_str[40], zeroes[SB_START] = {0}; @@ -243,7 +244,8 @@ static void write_sb(char *dev, unsigned block_size, unsigned bucket_size, data_offset); } else { sb.nbuckets = getblocks(fd) / sb.bucket_size; - sb.nr_in_set = 1; + sb.nr_in_set = nr_in_set; + sb.nr_this_dev = nr_this_dev; sb.first_bucket = (23 / sb.bucket_size) + 1; if (sb.nbuckets < 1 << 7) { @@ -446,14 +448,14 @@ int main(int argc, char **argv) for (i = 0; i < ncache_devices; i++) write_sb(cache_devices[i], block_size, bucket_size, writeback, discard, wipe_bcache, - cache_replacement_policy, - data_offset, set_uuid, false); + cache_replacement_policy, data_offset, + set_uuid, false, ncache_devices, i); for (i = 0; i < nbacking_devices; i++) write_sb(backing_devices[i], block_size, bucket_size, writeback, discard, wipe_bcache, - cache_replacement_policy, - data_offset, set_uuid, true); + cache_replacement_policy, data_offset, + set_uuid, true, nbacking_devices, i); return 0; } |