aboutsummaryrefslogtreecommitdiff
path: root/common
diff options
context:
space:
mode:
Diffstat (limited to 'common')
-rw-r--r--common/pmem.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/common/pmem.c b/common/pmem.c
index 80599ef..8169b88 100644
--- a/common/pmem.c
+++ b/common/pmem.c
@@ -199,6 +199,10 @@ static void __mark_bucket_page_free(struct mm_bucket *bucket,
enum mm_order iter = bucket->order;
reverse_foreach_order_init(iter) {
+ struct mm_branch *tree = bucket->tree[iter];
+ if (!tree)
+ continue;
+
__mark_free(bucket->tree[iter], fixup_addr,
order, bucket->order, iter);
}
@@ -272,6 +276,10 @@ static void __mark_bucket_page_used(struct mm_bucket *bucket,
{
pm_t fixed_addr = addr - bucket->base;
reverse_foreach_order(iter) {
+ struct mm_branch *tree = bucket->tree[iter];
+ if (!tree)
+ continue;
+
__mark_used(bucket->tree[iter], fixed_addr,
order, bucket->order, iter);
}