Searched refs:from_raw (Results 1 – 9 of 9) sorted by relevance
70 let new = unsafe { Arc::from_raw(p as *const T) }; in downcast_arc()
654 let obj = unsafe { Box::from_raw(self.tail.0) }; in next_back()1185 drop(Box::from_raw(current.0)); in clear_recurse()1343 let obj = Box::from_raw(node.0); in delete()1371 let obj = Box::from_raw(node.0); in delete()
166 Arc::from_raw(tmp); in new()228 let arc = Arc::from_raw(ptr); in parse_unsafe_arc_ptr()
1432 let pcb_ptr: Weak<ProcessControlBlock> = Weak::from_raw(*stack_bottom_ptr); in clear_pcb()1450 ManuallyDrop::new(Weak::from_raw(*p)); in pcb()1462 let pcb_ptr: Weak<ProcessControlBlock> = unsafe { Weak::from_raw(*ptr) }; in drop()
218 MMIOSpaceGuard::from_raw( in unmap_physical_region()
509 unsafe { MMIOSpaceGuard::from_raw(region.vaddr, new_size, false) }; in create_mmio()629 pub unsafe fn from_raw(vaddr: VirtAddr, size: usize, mapped: bool) -> Self { in from_raw() method
335 ManuallyDrop::new(Weak::from_raw(*p)); in arch_current_pcb()
284 ManuallyDrop::new(Weak::from_raw(*p)); in arch_current_pcb()
1679 * 解决内存泄露的问题:mountfs inode的wrap方法使用了Arc::into_raw而没有from_raw,导致inode始终无法释放