Update pbat stats in pbat_alloc/pbat_flush, not lbatview_elem_realloc
This commit is contained in:
parent
b169a0fbcc
commit
79eaf7dc7c
|
@ -377,21 +377,21 @@ do_free:
|
||||||
if (!ret) {
|
if (!ret) {
|
||||||
elem_lelen = __cpu_to_le32(len);
|
elem_lelen = __cpu_to_le32(len);
|
||||||
lbatview_wmem(lv, elem_off, lba_elem_len_bytes(&lv->kparams->params), &elem_lelen);
|
lbatview_wmem(lv, elem_off, lba_elem_len_bytes(&lv->kparams->params), &elem_lelen);
|
||||||
mutex_lock(&lv->kstats->lock);
|
|
||||||
lv->kstats->stats.pblk_used += req_nalloc - old_nalloc;
|
|
||||||
if (old_nalloc == 0) {
|
|
||||||
if (req_nalloc != 0) {
|
|
||||||
++lv->kstats->stats.lblk_used;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
if (req_nalloc == 0) {
|
|
||||||
--lv->kstats->stats.lblk_used;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
mutex_unlock(&lv->kstats->lock);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
mutex_lock(&lv->kstats->lock);
|
||||||
|
if (old_nalloc == 0) {
|
||||||
|
if (cur_nalloc != 0) {
|
||||||
|
++lv->kstats->stats.lblk_used;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
if (cur_nalloc == 0) {
|
||||||
|
--lv->kstats->stats.lblk_used;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
mutex_unlock(&lv->kstats->lock);
|
||||||
|
|
||||||
mutex_unlock(&lv->lock);
|
mutex_unlock(&lv->lock);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
|
@ -180,6 +180,9 @@ pbat_alloc(struct pbat* pbat)
|
||||||
pbat->last_alloc = idx;
|
pbat->last_alloc = idx;
|
||||||
pblk = idx + zone_data_off(&pbat->kparams->params, pbat->zone);
|
pblk = idx + zone_data_off(&pbat->kparams->params, pbat->zone);
|
||||||
SetPageDirty(pbat->page);
|
SetPageDirty(pbat->page);
|
||||||
|
mutex_lock(&pbat->kstats->lock);
|
||||||
|
++pbat->kstats->stats.pblk_used;
|
||||||
|
mutex_unlock(&pbat->kstats->lock);
|
||||||
|
|
||||||
out:
|
out:
|
||||||
mutex_unlock(&pbat->lock);
|
mutex_unlock(&pbat->lock);
|
||||||
|
@ -206,6 +209,9 @@ pbat_free(struct pbat* pbat, u64 pblk)
|
||||||
cbd_bitmap_free(pbat->buf, idx);
|
cbd_bitmap_free(pbat->buf, idx);
|
||||||
pbat->full = false;
|
pbat->full = false;
|
||||||
SetPageDirty(pbat->page);
|
SetPageDirty(pbat->page);
|
||||||
|
mutex_lock(&pbat->kstats->lock);
|
||||||
|
--pbat->kstats->stats.pblk_used;
|
||||||
|
mutex_unlock(&pbat->kstats->lock);
|
||||||
mutex_unlock(&pbat->lock);
|
mutex_unlock(&pbat->lock);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Reference in New Issue