lib/ftl: Change _ZONE_STATE_CLOSED to _ZONE_STATE_FULL
Ftl should operate on SPDK_BDEV_ZONE_STATE_FULL instead SPDK_BDEV_ZONE_STATE_CLOSED. Change-Id: I9ede78e3a1097490c1eb924f9e009fa166a7f3d6 Signed-off-by: Wojciech Malikowski <wojciech.malikowski@intel.com> Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/553 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
This commit is contained in:
parent
38d3138ee5
commit
97f3ad2d8b
@ -235,7 +235,7 @@ _ftl_band_set_closed(struct ftl_band *band)
|
|||||||
if (spdk_likely(band->num_zones)) {
|
if (spdk_likely(band->num_zones)) {
|
||||||
LIST_INSERT_HEAD(&dev->shut_bands, band, list_entry);
|
LIST_INSERT_HEAD(&dev->shut_bands, band, list_entry);
|
||||||
CIRCLEQ_FOREACH(zone, &band->zones, circleq) {
|
CIRCLEQ_FOREACH(zone, &band->zones, circleq) {
|
||||||
zone->info.state = SPDK_BDEV_ZONE_STATE_CLOSED;
|
zone->info.state = SPDK_BDEV_ZONE_STATE_FULL;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
LIST_REMOVE(band, list_entry);
|
LIST_REMOVE(band, list_entry);
|
||||||
|
@ -358,7 +358,7 @@ ftl_submit_erase(struct ftl_io *io)
|
|||||||
for (i = 0; i < io->num_blocks; ++i) {
|
for (i = 0; i < io->num_blocks; ++i) {
|
||||||
if (i != 0) {
|
if (i != 0) {
|
||||||
zone = ftl_band_next_zone(band, ftl_band_zone_from_addr(band, addr));
|
zone = ftl_band_next_zone(band, ftl_band_zone_from_addr(band, addr));
|
||||||
assert(zone->info.state == SPDK_BDEV_ZONE_STATE_CLOSED);
|
assert(zone->info.state == SPDK_BDEV_ZONE_STATE_FULL);
|
||||||
addr.offset = zone->info.zone_id;
|
addr.offset = zone->info.zone_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1087,7 +1087,7 @@ ftl_pad_zone_pad_finish(struct ftl_restore_band *rband, bool direct_access)
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < rband->band->num_zones; ++i) {
|
for (i = 0; i < rband->band->num_zones; ++i) {
|
||||||
if (rband->band->zone_buf[i].info.state != SPDK_BDEV_ZONE_STATE_CLOSED) {
|
if (rband->band->zone_buf[i].info.state != SPDK_BDEV_ZONE_STATE_FULL) {
|
||||||
num_pad_zones++;
|
num_pad_zones++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1168,7 +1168,7 @@ ftl_pad_zone_cb(struct ftl_io *io, void *arg, int status)
|
|||||||
offset = io->addr.offset % ftl_get_num_blocks_in_zone(restore->dev);
|
offset = io->addr.offset % ftl_get_num_blocks_in_zone(restore->dev);
|
||||||
if (offset + io->num_blocks == ftl_get_num_blocks_in_zone(restore->dev)) {
|
if (offset + io->num_blocks == ftl_get_num_blocks_in_zone(restore->dev)) {
|
||||||
zone = ftl_band_zone_from_addr(band, io->addr);
|
zone = ftl_band_zone_from_addr(band, io->addr);
|
||||||
zone->info.state = SPDK_BDEV_ZONE_STATE_CLOSED;
|
zone->info.state = SPDK_BDEV_ZONE_STATE_FULL;
|
||||||
} else {
|
} else {
|
||||||
struct ftl_addr addr = io->addr;
|
struct ftl_addr addr = io->addr;
|
||||||
addr.offset += io->num_blocks;
|
addr.offset += io->num_blocks;
|
||||||
@ -1216,7 +1216,7 @@ ftl_restore_pad_band(struct ftl_restore_band *rband)
|
|||||||
}
|
}
|
||||||
|
|
||||||
for (i = 0; i < band->num_zones; ++i) {
|
for (i = 0; i < band->num_zones; ++i) {
|
||||||
if (band->zone_buf[i].info.state == SPDK_BDEV_ZONE_STATE_CLOSED) {
|
if (band->zone_buf[i].info.state == SPDK_BDEV_ZONE_STATE_FULL) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -121,7 +121,7 @@ test_init_ftl_band(struct spdk_ftl_dev *dev, size_t id, size_t zone_size)
|
|||||||
|
|
||||||
for (size_t i = 0; i < ftl_get_num_punits(dev); ++i) {
|
for (size_t i = 0; i < ftl_get_num_punits(dev); ++i) {
|
||||||
zone = &band->zone_buf[i];
|
zone = &band->zone_buf[i];
|
||||||
zone->info.state = SPDK_BDEV_ZONE_STATE_CLOSED;
|
zone->info.state = SPDK_BDEV_ZONE_STATE_FULL;
|
||||||
zone->info.zone_id = zone_size * (id * ftl_get_num_punits(dev) + i);
|
zone->info.zone_id = zone_size * (id * ftl_get_num_punits(dev) + i);
|
||||||
CIRCLEQ_INSERT_TAIL(&band->zones, zone, circleq);
|
CIRCLEQ_INSERT_TAIL(&band->zones, zone, circleq);
|
||||||
band->num_zones++;
|
band->num_zones++;
|
||||||
|
Loading…
Reference in New Issue
Block a user