diff --git a/kernel/src/allocator.rs b/kernel/src/allocator.rs index 5329844e..bd225bfa 100644 --- a/kernel/src/allocator.rs +++ b/kernel/src/allocator.rs @@ -150,7 +150,8 @@ impl Heap { #[cfg(debug_assertions)] trace!("Allocating {:?}", ptr); } - // FIXME: zero out memory to prevent leaking data + + unsafe { core::ptr::write_bytes(ptr, 0, size) }; assert!(ptr.is_aligned_to(alignment)); NonNull::new(ptr) @@ -168,6 +169,7 @@ impl Heap { self.bitmap_set_range(start, size, false); self.allocated_chunks -= size; // FIXME: zero out memory to prevent leaking data + // REPLY: When we zero on alloc, do we really need it? } /// Finds first hole that can fit an allocation of `size` chunks, returns the start of the