diff options
| author | Frans Kaashoek <kaashoek@mit.edu> | 2019-07-17 05:53:47 -0400 |
|---|---|---|
| committer | Frans Kaashoek <kaashoek@mit.edu> | 2019-07-17 05:53:47 -0400 |
| commit | b924e44f06c9c0882a2cffe6c9215b12c5aee2e6 (patch) | |
| tree | b1204b01142d7a5b41988b87a4c06b0aabe8b5c9 /kernel/kalloc.c | |
| parent | ce53416f4970ebb137c8e66dc75488cfefaf084d (diff) | |
| parent | ebc39372096280a4a5957d3e3836c859e5d78a79 (diff) | |
| download | xv6-labs-2022-b924e44f06c9c0882a2cffe6c9215b12c5aee2e6.tar.xz xv6-labs-2022-b924e44f06c9c0882a2cffe6c9215b12c5aee2e6.zip | |
Merge branch 'riscv' of g.csail.mit.edu:xv6-dev into riscv
Diffstat (limited to 'kernel/kalloc.c')
| -rw-r--r-- | kernel/kalloc.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/kernel/kalloc.c b/kernel/kalloc.c index afadb02..d72e0ab 100644 --- a/kernel/kalloc.c +++ b/kernel/kalloc.c @@ -55,8 +55,9 @@ kfree(void *pa) // Fill with junk to catch dangling refs. memset(pa, 1, PGSIZE); - acquire(&kmem.lock); r = (struct run*)pa; + + acquire(&kmem.lock); r->next = kmem.freelist; kmem.freelist = r; release(&kmem.lock); @@ -75,6 +76,7 @@ kalloc(void) if(r) kmem.freelist = r->next; release(&kmem.lock); + if(r) memset((char*)r, 5, PGSIZE); // fill with junk return (void*)r; |
