lib/ftl: Rename ftl_dev_num_punits() to ftl_get_num_punits()
This patch is part of name refactoring associated with moving FTL to work with zone bdev API. Change-Id: I9e0a569e9dfd0e8b8236c0840ce10b92362c4996 Signed-off-by: Wojciech Malikowski <wojciech.malikowski@intel.com> Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/479844 Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Broadcom SPDK FC-NVMe CI <spdk-ci.pdl@broadcom.com>
This commit is contained in:
parent
3ff9d6e45b
commit
2c2a005695
@ -518,7 +518,7 @@ ftl_band_from_addr(struct spdk_ftl_dev *dev, struct ftl_addr addr)
|
||||
struct ftl_zone *
|
||||
ftl_band_zone_from_addr(struct ftl_band *band, struct ftl_addr addr)
|
||||
{
|
||||
assert(addr.pu < ftl_dev_num_punits(band->dev));
|
||||
assert(addr.pu < ftl_get_num_punits(band->dev));
|
||||
return &band->zone_buf[addr.pu];
|
||||
}
|
||||
|
||||
@ -526,7 +526,7 @@ uint64_t
|
||||
ftl_band_lbkoff_from_addr(struct ftl_band *band, struct ftl_addr addr)
|
||||
{
|
||||
assert(addr.zone_id == band->id);
|
||||
assert(addr.pu < ftl_dev_num_punits(band->dev));
|
||||
assert(addr.pu < ftl_get_num_punits(band->dev));
|
||||
return addr.pu * ftl_get_num_blocks_in_zone(band->dev) + addr.offset;
|
||||
}
|
||||
|
||||
|
@ -463,7 +463,7 @@ ftl_get_num_blocks_in_zone(const struct spdk_ftl_dev *dev)
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
ftl_dev_num_punits(const struct spdk_ftl_dev *dev)
|
||||
ftl_get_num_punits(const struct spdk_ftl_dev *dev)
|
||||
{
|
||||
return dev->geo.num_pu * dev->geo.num_grp;
|
||||
}
|
||||
@ -471,7 +471,7 @@ ftl_dev_num_punits(const struct spdk_ftl_dev *dev)
|
||||
static inline uint64_t
|
||||
ftl_get_num_blocks_in_band(const struct spdk_ftl_dev *dev)
|
||||
{
|
||||
return ftl_dev_num_punits(dev) * ftl_get_num_blocks_in_zone(dev);
|
||||
return ftl_get_num_punits(dev) * ftl_get_num_blocks_in_zone(dev);
|
||||
}
|
||||
|
||||
static inline size_t
|
||||
|
@ -298,7 +298,7 @@ ftl_dev_init_bands(struct spdk_ftl_dev *dev)
|
||||
pband = band;
|
||||
|
||||
CIRCLEQ_INIT(&band->zones);
|
||||
band->zone_buf = calloc(ftl_dev_num_punits(dev), sizeof(*band->zone_buf));
|
||||
band->zone_buf = calloc(ftl_get_num_punits(dev), sizeof(*band->zone_buf));
|
||||
if (!band->zone_buf) {
|
||||
SPDK_ERRLOG("Failed to allocate block state table for band: [%u]\n", i);
|
||||
rc = -1;
|
||||
@ -318,7 +318,7 @@ ftl_dev_init_bands(struct spdk_ftl_dev *dev)
|
||||
}
|
||||
}
|
||||
|
||||
for (i = 0; i < ftl_dev_num_punits(dev); ++i) {
|
||||
for (i = 0; i < ftl_get_num_punits(dev); ++i) {
|
||||
rc = ftl_retrieve_punit_chunk_info(dev, i, info);
|
||||
if (rc) {
|
||||
goto out;
|
||||
@ -1075,7 +1075,7 @@ spdk_ftl_dev_init(const struct spdk_ftl_dev_init_opts *_opts, spdk_ftl_init_fn c
|
||||
goto fail_sync;
|
||||
}
|
||||
|
||||
dev->rwb = ftl_rwb_init(&dev->conf, dev->geo.ws_opt, dev->md_size, ftl_dev_num_punits(dev));
|
||||
dev->rwb = ftl_rwb_init(&dev->conf, dev->geo.ws_opt, dev->md_size, ftl_get_num_punits(dev));
|
||||
if (!dev->rwb) {
|
||||
SPDK_ERRLOG("Unable to initialize rwb structures\n");
|
||||
goto fail_sync;
|
||||
|
@ -298,7 +298,7 @@ ftl_reloc_read_cb(struct ftl_io *io, void *arg, int status)
|
||||
static void
|
||||
ftl_reloc_iter_reset(struct ftl_band_reloc *breloc)
|
||||
{
|
||||
memset(breloc->iter.zone_offset, 0, ftl_dev_num_punits(breloc->band->dev) *
|
||||
memset(breloc->iter.zone_offset, 0, ftl_get_num_punits(breloc->band->dev) *
|
||||
sizeof(*breloc->iter.zone_offset));
|
||||
breloc->iter.zone_current = 0;
|
||||
}
|
||||
@ -314,7 +314,7 @@ ftl_reloc_iter_lbkoff(struct ftl_band_reloc *breloc)
|
||||
static void
|
||||
ftl_reloc_iter_next_zone(struct ftl_band_reloc *breloc)
|
||||
{
|
||||
size_t num_zones = ftl_dev_num_punits(breloc->band->dev);
|
||||
size_t num_zones = ftl_get_num_punits(breloc->band->dev);
|
||||
|
||||
breloc->iter.zone_current = (breloc->iter.zone_current + 1) % num_zones;
|
||||
}
|
||||
@ -368,7 +368,7 @@ static int
|
||||
ftl_reloc_iter_done(struct ftl_band_reloc *breloc)
|
||||
{
|
||||
size_t i;
|
||||
size_t num_zones = ftl_dev_num_punits(breloc->band->dev);
|
||||
size_t num_zones = ftl_get_num_punits(breloc->band->dev);
|
||||
size_t num_lbks = ftl_get_num_blocks_in_zone(breloc->parent->dev);
|
||||
|
||||
for (i = 0; i < num_zones; ++i) {
|
||||
@ -407,7 +407,7 @@ ftl_reloc_next_lbks(struct ftl_band_reloc *breloc, struct ftl_addr *addr)
|
||||
size_t i, lbk_cnt = 0;
|
||||
struct spdk_ftl_dev *dev = breloc->parent->dev;
|
||||
|
||||
for (i = 0; i < ftl_dev_num_punits(dev); ++i) {
|
||||
for (i = 0; i < ftl_get_num_punits(dev); ++i) {
|
||||
lbk_cnt = ftl_reloc_find_valid_lbks(breloc, breloc->parent->xfer_size, addr);
|
||||
ftl_reloc_iter_next_zone(breloc);
|
||||
|
||||
@ -617,7 +617,7 @@ ftl_band_reloc_init(struct ftl_reloc *reloc, struct ftl_band_reloc *breloc,
|
||||
return -1;
|
||||
}
|
||||
|
||||
breloc->iter.zone_offset = calloc(ftl_dev_num_punits(band->dev),
|
||||
breloc->iter.zone_offset = calloc(ftl_get_num_punits(band->dev),
|
||||
sizeof(*breloc->iter.zone_offset));
|
||||
if (!breloc->iter.zone_offset) {
|
||||
SPDK_ERRLOG("Failed to initialize reloc iterator");
|
||||
|
@ -89,13 +89,13 @@ test_init_ftl_band(struct spdk_ftl_dev *dev, size_t id)
|
||||
band->lba_map.vld = spdk_bit_array_create(ftl_get_num_blocks_in_band(dev));
|
||||
SPDK_CU_ASSERT_FATAL(band->lba_map.vld != NULL);
|
||||
|
||||
band->zone_buf = calloc(ftl_dev_num_punits(dev), sizeof(*band->zone_buf));
|
||||
band->zone_buf = calloc(ftl_get_num_punits(dev), sizeof(*band->zone_buf));
|
||||
SPDK_CU_ASSERT_FATAL(band->zone_buf != NULL);
|
||||
|
||||
band->reloc_bitmap = spdk_bit_array_create(ftl_dev_num_bands(dev));
|
||||
SPDK_CU_ASSERT_FATAL(band->reloc_bitmap != NULL);
|
||||
|
||||
for (size_t i = 0; i < ftl_dev_num_punits(dev); ++i) {
|
||||
for (size_t i = 0; i < ftl_get_num_punits(dev); ++i) {
|
||||
zone = &band->zone_buf[i];
|
||||
zone->state = SPDK_BDEV_ZONE_STATE_CLOSED;
|
||||
zone->start_addr.pu = i;
|
||||
|
@ -89,7 +89,7 @@ test_band_lbkoff_from_addr_base(void)
|
||||
uint64_t offset, i, flat_lun = 0;
|
||||
|
||||
setup_band();
|
||||
for (i = 0; i < ftl_dev_num_punits(g_dev); ++i) {
|
||||
for (i = 0; i < ftl_get_num_punits(g_dev); ++i) {
|
||||
addr = addr_from_punit(i);
|
||||
addr.zone_id = TEST_BAND_IDX;
|
||||
|
||||
@ -107,7 +107,7 @@ test_band_lbkoff_from_addr_offset(void)
|
||||
uint64_t offset, expect, i, j;
|
||||
|
||||
setup_band();
|
||||
for (i = 0; i < ftl_dev_num_punits(g_dev); ++i) {
|
||||
for (i = 0; i < ftl_get_num_punits(g_dev); ++i) {
|
||||
for (j = 0; j < g_geo.clba; ++j) {
|
||||
addr = addr_from_punit(i);
|
||||
addr.zone_id = TEST_BAND_IDX;
|
||||
@ -129,7 +129,7 @@ test_band_addr_from_lbkoff(void)
|
||||
uint64_t offset, i, j;
|
||||
|
||||
setup_band();
|
||||
for (i = 0; i < ftl_dev_num_punits(g_dev); ++i) {
|
||||
for (i = 0; i < ftl_get_num_punits(g_dev); ++i) {
|
||||
for (j = 0; j < g_geo.clba; ++j) {
|
||||
expect = addr_from_punit(i);
|
||||
expect.zone_id = TEST_BAND_IDX;
|
||||
@ -245,7 +245,7 @@ test_next_xfer_addr(void)
|
||||
expect = addr_from_punit(0);
|
||||
expect.zone_id = TEST_BAND_IDX;
|
||||
expect.offset = g_dev->xfer_size;
|
||||
addr = addr_from_punit(ftl_dev_num_punits(g_dev) - 1);
|
||||
addr = addr_from_punit(ftl_get_num_punits(g_dev) - 1);
|
||||
addr.zone_id = TEST_BAND_IDX;
|
||||
result = ftl_band_next_xfer_addr(g_band, addr, g_dev->xfer_size);
|
||||
CU_ASSERT_EQUAL(result.addr, expect.addr);
|
||||
@ -254,7 +254,7 @@ test_next_xfer_addr(void)
|
||||
expect = addr_from_punit(0);
|
||||
expect.zone_id = TEST_BAND_IDX;
|
||||
expect.offset = g_dev->xfer_size + 2;
|
||||
addr = addr_from_punit(ftl_dev_num_punits(g_dev) - 1);
|
||||
addr = addr_from_punit(ftl_get_num_punits(g_dev) - 1);
|
||||
addr.zone_id = TEST_BAND_IDX;
|
||||
result = ftl_band_next_xfer_addr(g_band, addr, g_dev->xfer_size + 2);
|
||||
CU_ASSERT_EQUAL(result.addr, expect.addr);
|
||||
@ -267,7 +267,7 @@ test_next_xfer_addr(void)
|
||||
addr.zone_id = TEST_BAND_IDX;
|
||||
addr.offset = g_dev->xfer_size * 2 + 1;
|
||||
result = ftl_band_next_xfer_addr(g_band, addr, 3 * g_dev->xfer_size *
|
||||
ftl_dev_num_punits(g_dev) + 3);
|
||||
ftl_get_num_punits(g_dev) + 3);
|
||||
CU_ASSERT_EQUAL(result.addr, expect.addr);
|
||||
|
||||
/* Remove one zone and verify it's skipped properly */
|
||||
@ -281,7 +281,7 @@ test_next_xfer_addr(void)
|
||||
addr.zone_id = TEST_BAND_IDX;
|
||||
addr.offset = g_dev->xfer_size * 2 + 1;
|
||||
result = ftl_band_next_xfer_addr(g_band, addr, 3 * g_dev->xfer_size *
|
||||
(ftl_dev_num_punits(g_dev) - 1) + g_dev->xfer_size + 3);
|
||||
(ftl_get_num_punits(g_dev) - 1) + g_dev->xfer_size + 3);
|
||||
CU_ASSERT_EQUAL(result.addr, expect.addr);
|
||||
cleanup_band();
|
||||
}
|
||||
|
@ -276,7 +276,7 @@ test_reloc_iter_full(void)
|
||||
|
||||
CU_ASSERT_EQUAL(breloc->num_lbks, ftl_get_num_blocks_in_band(dev));
|
||||
|
||||
num_iters = ftl_dev_num_punits(dev) *
|
||||
num_iters = ftl_get_num_punits(dev) *
|
||||
(ftl_get_num_blocks_in_zone(dev) / reloc->xfer_size);
|
||||
|
||||
for (i = 0; i < num_iters; i++) {
|
||||
@ -284,7 +284,7 @@ test_reloc_iter_full(void)
|
||||
CU_ASSERT_EQUAL(num_lbks, reloc->xfer_size);
|
||||
}
|
||||
|
||||
num_iters = ftl_dev_num_punits(dev);
|
||||
num_iters = ftl_get_num_punits(dev);
|
||||
|
||||
/* ftl_reloc_next_lbks is searching for maximum xfer_size */
|
||||
/* contiguous valid logic blocks in zone, so we can end up */
|
||||
|
Loading…
Reference in New Issue
Block a user