[libc-commits] [libc] [libc][wait] hard code __W_CONTINUED for SYS_waitid fallback (PR #125929)

Nick Desaulniers via libc-commits libc-commits at lists.llvm.org
Wed Feb 5 12:56:46 PST 2025


https://github.com/nickdesaulniers created https://github.com/llvm/llvm-project/pull/125929

riscv32 currently doesn't have SYS_wait4, so wait4 is implemented via fallback
to SYS_waitid. In #125572, I missed that we had one use of the removed
__W_CONTINUED value. Hard code it here.

Fixes: #125572


>From eeacb0ac0204000cfaa981fecb746fa54e8521d0 Mon Sep 17 00:00:00 2001
From: Nick Desaulniers <ndesaulniers at google.com>
Date: Wed, 5 Feb 2025 12:47:26 -0800
Subject: [PATCH] [libc][wait] hard code __W_CONTINUED for SYS_waitid fallback

riscv32 currently doesn't have SYS_wait4, so wait4 is implemented via fallback
to SYS_waitid. In #125572, I missed that we had one use of the removed
__W_CONTINUED value. Hard code it here.

Fixes: #125572
---
 libc/src/sys/wait/wait4Impl.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libc/src/sys/wait/wait4Impl.h b/libc/src/sys/wait/wait4Impl.h
index 5c2cb3e8e0abf4e..ec84eee491de24e 100644
--- a/libc/src/sys/wait/wait4Impl.h
+++ b/libc/src/sys/wait/wait4Impl.h
@@ -65,7 +65,7 @@ LIBC_INLINE ErrorOr<pid_t> wait4impl(pid_t pid, int *wait_status, int options,
       *wait_status = W_STOPCODE(info.si_status);
       break;
     case CLD_CONTINUED:
-      *wait_status = __W_CONTINUED;
+      *wait_status = 0xffff;
       break;
     default:
       *wait_status = 0;



More information about the libc-commits mailing list