|
@@ -263,8 +263,14 @@ static ssize_t pblk_sysfs_lines(struct pblk *pblk, char *page)
|
|
|
sec_in_line = l_mg->data_line->sec_in_line;
|
|
|
meta_weight = bitmap_weight(&l_mg->meta_bitmap,
|
|
|
PBLK_DATA_LINES);
|
|
|
- map_weight = bitmap_weight(l_mg->data_line->map_bitmap,
|
|
|
+
|
|
|
+ spin_lock(&l_mg->data_line->lock);
|
|
|
+ if (l_mg->data_line->map_bitmap)
|
|
|
+ map_weight = bitmap_weight(l_mg->data_line->map_bitmap,
|
|
|
lm->sec_per_line);
|
|
|
+ else
|
|
|
+ map_weight = 0;
|
|
|
+ spin_unlock(&l_mg->data_line->lock);
|
|
|
}
|
|
|
spin_unlock(&l_mg->free_lock);
|
|
|
|