diff --git a/src/libos/src/syscall/mod.rs b/src/libos/src/syscall/mod.rs index ac8f58e0..3c0ee5ed 100644 --- a/src/libos/src/syscall/mod.rs +++ b/src/libos/src/syscall/mod.rs @@ -952,11 +952,12 @@ fn do_time(tloc_u: *mut time_t) -> Result { } fn do_clock_getres(clockid: clockid_t, res_u: *mut timespec_t) -> Result { + let clockid = time::ClockID::from_raw(clockid)?; if res_u.is_null() { return Ok(0); } check_mut_ptr(res_u)?; - let clockid = time::ClockID::from_raw(clockid)?; + let res = time::do_clock_getres(clockid)?; unsafe { *res_u = res;