blob: use bitarray function to count free clusters
Change-Id: I4830bcd2342551a6a02afd6e4551acbf463eb44c Signed-off-by: Daniel Verkamp <daniel.verkamp@intel.com> Reviewed-on: https://review.gerrithub.io/416256 Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Ben Walker <benjamin.walker@intel.com> Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
This commit is contained in:
parent
9d149a706b
commit
a7b25a6770
@ -2718,15 +2718,15 @@ _spdk_bs_load_used_clusters_cpl(spdk_bs_sequence_t *seq, void *cb_arg, int bserr
|
||||
return;
|
||||
}
|
||||
|
||||
ctx->bs->num_free_clusters = ctx->bs->total_clusters;
|
||||
for (i = 0; i < ctx->mask->length; i++) {
|
||||
if (ctx->mask->mask[i / 8] & (1U << (i % 8))) {
|
||||
spdk_bit_array_set(ctx->bs->used_clusters, i);
|
||||
assert(ctx->bs->num_free_clusters > 0);
|
||||
ctx->bs->num_free_clusters--;
|
||||
}
|
||||
}
|
||||
|
||||
ctx->bs->num_free_clusters = spdk_bit_array_count_clear(ctx->bs->used_clusters);
|
||||
assert(ctx->bs->num_free_clusters <= ctx->bs->total_clusters);
|
||||
|
||||
spdk_dma_free(ctx->mask);
|
||||
|
||||
/* Read the used blobids mask */
|
||||
|
Loading…
Reference in New Issue
Block a user