From 3a5793be4fb040709a115d44d969364b61a4fd06 Mon Sep 17 00:00:00 2001 From: He Sun Date: Wed, 17 Jun 2020 07:44:47 +0800 Subject: [PATCH] Fix set_tid_address not supporting null pointers --- src/libos/src/process/syscalls.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/libos/src/process/syscalls.rs b/src/libos/src/process/syscalls.rs index ea20cd17..1ca946d2 100644 --- a/src/libos/src/process/syscalls.rs +++ b/src/libos/src/process/syscalls.rs @@ -180,7 +180,9 @@ pub fn do_arch_prctl(code: u32, addr: *mut usize) -> Result { } pub fn do_set_tid_address(tidptr: *mut pid_t) -> Result { - check_mut_ptr(tidptr)?; + if !tidptr.is_null() { + check_mut_ptr(tidptr)?; + } super::do_set_tid_address::do_set_tid_address(tidptr).map(|tid| tid as isize) }