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) {
|
||||
elem_lelen = __cpu_to_le32(len);
|
||||
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);
|
||||
return ret;
|
||||
}
|
||||
|
|
|
@ -180,6 +180,9 @@ pbat_alloc(struct pbat* pbat)
|
|||
pbat->last_alloc = idx;
|
||||
pblk = idx + zone_data_off(&pbat->kparams->params, pbat->zone);
|
||||
SetPageDirty(pbat->page);
|
||||
mutex_lock(&pbat->kstats->lock);
|
||||
++pbat->kstats->stats.pblk_used;
|
||||
mutex_unlock(&pbat->kstats->lock);
|
||||
|
||||
out:
|
||||
mutex_unlock(&pbat->lock);
|
||||
|
@ -206,6 +209,9 @@ pbat_free(struct pbat* pbat, u64 pblk)
|
|||
cbd_bitmap_free(pbat->buf, idx);
|
||||
pbat->full = false;
|
||||
SetPageDirty(pbat->page);
|
||||
mutex_lock(&pbat->kstats->lock);
|
||||
--pbat->kstats->stats.pblk_used;
|
||||
mutex_unlock(&pbat->kstats->lock);
|
||||
mutex_unlock(&pbat->lock);
|
||||
|
||||
return 0;
|
||||
|
|
Loading…
Reference in New Issue