From c465e7782a43027fc2fcc7bb9a25793d3de210b5 Mon Sep 17 00:00:00 2001 From: ClawSeven Date: Wed, 17 Jan 2024 16:05:36 +0800 Subject: [PATCH] [libos] Fix clock_getres return successfully with wrong clock id --- src/libos/src/syscall/mod.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 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;