Jeremy Soller 5 лет назад
Родитель
Сommit
4818ad61ab
2 измененных файлов с 2 добавлено и 0 удалено
  1. 1 0
      src/ld_so/tcb.rs
  2. 1 0
      src/platform/pte.rs

+ 1 - 0
src/ld_so/tcb.rs

@@ -156,6 +156,7 @@ impl Tcb {
         {
             return Err(Error::Malformed(format!("failed to map tls")));
         }
+        ptr::write_bytes(ptr as *mut u8, 0, size);
         Ok(slice::from_raw_parts_mut(ptr as *mut u8, size))
     }
 

+ 1 - 0
src/platform/pte.rs

@@ -116,6 +116,7 @@ pub unsafe extern "C" fn pte_osThreadCreate(
     if stack_base as isize == -1 {
         return PTE_OS_GENERAL_FAILURE;
     }
+    ptr::write_bytes(stack_base as *mut u8, 0, stack_size);
     let stack_end = stack_base.add(stack_size);
     let mut stack = stack_end as *mut usize;
     {