提交 108dba8b 创建 作者: Austin Clements's avatar Austin Clements

vm: More asserts

上级 6a758a72
...@@ -174,6 +174,7 @@ vma::vma(vmap *vmap, uptr start, uptr end, enum vmatype vtype, vmnode *vmn) : ...@@ -174,6 +174,7 @@ vma::vma(vmap *vmap, uptr start, uptr end, enum vmatype vtype, vmnode *vmn) :
{ {
assert(PGOFFSET(start) == 0); assert(PGOFFSET(start) == 0);
assert(PGOFFSET(end) == 0); assert(PGOFFSET(end) == 0);
assert(!vmn || end - start == vmn->npages << PGSHIFT);
if (n) if (n)
n->incref(); n->incref();
} }
...@@ -255,6 +256,8 @@ vmap::incref() ...@@ -255,6 +256,8 @@ vmap::incref()
bool bool
vmap::replace_vma(vma *a, vma *b) vmap::replace_vma(vma *a, vma *b)
{ {
assert(a->vma_start == b->vma_start);
assert(a->vma_end == b->vma_end);
auto span = vmas.search_lock(a->vma_start, a->vma_end - a->vma_start); auto span = vmas.search_lock(a->vma_start, a->vma_end - a->vma_start);
if (a->deleted()) if (a->deleted())
return false; return false;
......
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论