Rollup merge of #59284 - RalfJung:maybe-uninit, r=sfackler
adjust MaybeUninit API to discussions uninitialized -> uninit into_initialized -> assume_init read_initialized -> read set -> write
This commit is contained in:
commit
ad5bbf01c0
12 changed files with 110 additions and 73 deletions
|
|
@ -28,7 +28,7 @@ const ENCLU_EGETKEY: u32 = 1;
|
|||
#[unstable(feature = "sgx_platform", issue = "56975")]
|
||||
pub fn egetkey(request: &Align512<[u8; 512]>) -> Result<Align16<[u8; 16]>, u32> {
|
||||
unsafe {
|
||||
let mut out = MaybeUninit::uninitialized();
|
||||
let mut out = MaybeUninit::uninit();
|
||||
let error;
|
||||
|
||||
asm!(
|
||||
|
|
@ -41,7 +41,7 @@ pub fn egetkey(request: &Align512<[u8; 512]>) -> Result<Align16<[u8; 16]>, u32>
|
|||
);
|
||||
|
||||
match error {
|
||||
0 => Ok(out.into_initialized()),
|
||||
0 => Ok(out.assume_init()),
|
||||
err => Err(err),
|
||||
}
|
||||
}
|
||||
|
|
@ -58,7 +58,7 @@ pub fn ereport(
|
|||
reportdata: &Align128<[u8; 64]>,
|
||||
) -> Align512<[u8; 432]> {
|
||||
unsafe {
|
||||
let mut report = MaybeUninit::uninitialized();
|
||||
let mut report = MaybeUninit::uninit();
|
||||
|
||||
asm!(
|
||||
"enclu"
|
||||
|
|
@ -69,6 +69,6 @@ pub fn ereport(
|
|||
"{rdx}"(report.as_mut_ptr())
|
||||
);
|
||||
|
||||
report.into_initialized()
|
||||
report.assume_init()
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -280,7 +280,7 @@ mod tests {
|
|||
let mut init = MaybeUninit::<RWLock>::zeroed();
|
||||
rwlock_new(&mut init);
|
||||
assert_eq!(
|
||||
mem::transmute::<_, [u8; 128]>(init.into_initialized()).as_slice(),
|
||||
mem::transmute::<_, [u8; 128]>(init.assume_init()).as_slice(),
|
||||
RWLOCK_INIT
|
||||
)
|
||||
};
|
||||
|
|
|
|||
|
|
@ -154,7 +154,7 @@ unsafe impl Sync for ReentrantMutex {}
|
|||
|
||||
impl ReentrantMutex {
|
||||
pub fn uninitialized() -> ReentrantMutex {
|
||||
ReentrantMutex { inner: UnsafeCell::new(MaybeUninit::uninitialized()) }
|
||||
ReentrantMutex { inner: UnsafeCell::new(MaybeUninit::uninit()) }
|
||||
}
|
||||
|
||||
pub unsafe fn init(&mut self) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue