bdev/ocssd: Factor out internal of bdev_ocssd_num_parallel_units()
Factor out the internal of bdev_ocssd_num_parallel_units() into an new inline helper function ocssd_range_num_parallel_units(), and apply the latter into a few functions. Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Change-Id: I16550046ed2d6f543f66711810b30bd45f21c970 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/5130 Community-CI: Broadcom CI Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@mellanox.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
This commit is contained in:
parent
f90c6378a5
commit
ddc03b4584
@ -235,10 +235,16 @@ bdev_ocssd_destruct(void *ctx)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline uint64_t
|
||||||
|
ocssd_range_num_parallel_units(const struct bdev_ocssd_range *range)
|
||||||
|
{
|
||||||
|
return range->end - range->begin + 1;
|
||||||
|
}
|
||||||
|
|
||||||
static uint64_t
|
static uint64_t
|
||||||
bdev_ocssd_num_parallel_units(const struct ocssd_bdev *ocssd_bdev)
|
bdev_ocssd_num_parallel_units(const struct ocssd_bdev *ocssd_bdev)
|
||||||
{
|
{
|
||||||
return ocssd_bdev->range.end - ocssd_bdev->range.begin + 1;
|
return ocssd_range_num_parallel_units(&ocssd_bdev->range);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -261,12 +267,12 @@ bdev_ocssd_translate_lba(struct ocssd_bdev *ocssd_bdev, uint64_t lba, uint64_t *
|
|||||||
*lbk = lba % geo->clba;
|
*lbk = lba % geo->clba;
|
||||||
addr_shift = geo->clba;
|
addr_shift = geo->clba;
|
||||||
|
|
||||||
punit = range->begin + (lba / addr_shift) % bdev_ocssd_num_parallel_units(ocssd_bdev);
|
punit = range->begin + (lba / addr_shift) % ocssd_range_num_parallel_units(range);
|
||||||
|
|
||||||
*pu = punit % geo->num_pu;
|
*pu = punit % geo->num_pu;
|
||||||
*grp = punit / geo->num_pu;
|
*grp = punit / geo->num_pu;
|
||||||
|
|
||||||
addr_shift *= bdev_ocssd_num_parallel_units(ocssd_bdev);
|
addr_shift *= ocssd_range_num_parallel_units(range);
|
||||||
|
|
||||||
*chk = (lba / addr_shift) % geo->num_chk;
|
*chk = (lba / addr_shift) % geo->num_chk;
|
||||||
}
|
}
|
||||||
@ -288,7 +294,7 @@ bdev_ocssd_from_disk_lba(struct ocssd_bdev *ocssd_bdev, uint64_t lba)
|
|||||||
punit = grp * geometry->num_pu + pu - range->begin;
|
punit = grp * geometry->num_pu + pu - range->begin;
|
||||||
|
|
||||||
return lbk + punit * geometry->clba + chk * geometry->clba *
|
return lbk + punit * geometry->clba + chk * geometry->clba *
|
||||||
bdev_ocssd_num_parallel_units(ocssd_bdev);
|
ocssd_range_num_parallel_units(range);
|
||||||
}
|
}
|
||||||
|
|
||||||
static uint64_t
|
static uint64_t
|
||||||
|
Loading…
Reference in New Issue
Block a user