提交 15cf9ce6 创建 作者: Nickolai Zeldovich's avatar Nickolai Zeldovich

slightly fewer false positives in mtrace

上级 7a560836
...@@ -25,7 +25,7 @@ kmemprint(void) ...@@ -25,7 +25,7 @@ kmemprint(void)
{ {
cprintf("free pages: [ "); cprintf("free pages: [ ");
for (uint i = 0; i < NCPU; i++) for (uint i = 0; i < NCPU; i++)
if (i == cpunum()) if (i == cpu->id)
cprintf("<%d> ", kmems[i].nfree); cprintf("<%d> ", kmems[i].nfree);
else else
cprintf("%d ", kmems[i].nfree); cprintf("%d ", kmems[i].nfree);
...@@ -54,6 +54,8 @@ kfree_pool(struct kmem *m, char *v) ...@@ -54,6 +54,8 @@ kfree_pool(struct kmem *m, char *v)
r->next = m->freelist; r->next = m->freelist;
m->freelist = r; m->freelist = r;
m->nfree++; m->nfree++;
release(&m->lock);
if (kinited) if (kinited)
mtrace_label_register(mtrace_label_block, mtrace_label_register(mtrace_label_block,
r, r,
...@@ -61,8 +63,6 @@ kfree_pool(struct kmem *m, char *v) ...@@ -61,8 +63,6 @@ kfree_pool(struct kmem *m, char *v)
0, 0,
0, 0,
RET_EIP()); RET_EIP());
release(&m->lock);
} }
void void
...@@ -100,7 +100,7 @@ kalloc(void) ...@@ -100,7 +100,7 @@ kalloc(void)
// cprintf("%d: kalloc 0x%x 0x%x 0x%x 0x%x 0%x\n", cpu->id, kmem, &kmems[cpu->id], kmem->freelist, PHYSTOP, kmems[1].freelist); // cprintf("%d: kalloc 0x%x 0x%x 0x%x 0x%x 0%x\n", cpu->id, kmem, &kmems[cpu->id], kmem->freelist, PHYSTOP, kmems[1].freelist);
uint startcpu = cpunum(); uint startcpu = cpu->id;
for (uint i = 0; r == 0 && i < NCPU; i++) { for (uint i = 0; r == 0 && i < NCPU; i++) {
int cn = (i + startcpu) % NCPU; int cn = (i + startcpu) % NCPU;
struct kmem *m = &kmems[cn]; struct kmem *m = &kmems[cn];
......
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论