Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F144955471
D51691.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
1 KB
Referenced Files
None
Subscribers
None
D51691.diff
View Options
diff --git a/libexec/rc/rc.subr b/libexec/rc/rc.subr
--- a/libexec/rc/rc.subr
+++ b/libexec/rc/rc.subr
@@ -800,7 +800,7 @@
fi
_prefix=
while true; do
- _nlist="";
+ _nlist=""
for _j in $_list; do
if kill -0 $_j 2>/dev/null; then
_nlist="${_nlist}${_nlist:+ }$_j"
@@ -813,7 +813,7 @@
_list=$_nlist
echo -n ${_prefix:-"Waiting for PIDS: "}$_list
_prefix=", "
- pwait $_list 2>/dev/null
+ pwait -o $_list 2>/dev/null
done
if [ -n "$_prefix" ]; then
echo "."
diff --git a/libexec/rc/tests/rc_subr_test.sh b/libexec/rc/tests/rc_subr_test.sh
--- a/libexec/rc/tests/rc_subr_test.sh
+++ b/libexec/rc/tests/rc_subr_test.sh
@@ -1,5 +1,8 @@
+#-
+# SPDX-License-Identifier: BSD-2-Clause
#
# Copyright 2022 Mateusz Piotrowski <0mp@FreeBSD.org>
+# Copyright (c) 2025 Klara, Inc.
#
# SPDX-License-Identifier: BSD-2-Clause
#
@@ -104,8 +107,32 @@
/bin/sh "$__script" "$__name" "$__pidfile" onestop
}
+atf_test_case wait_for_pids_progress
+wait_for_pids_progress_head()
+{
+ atf_set "descr" "Verify that wait_for_pids prints progress updates"
+}
+wait_for_pids_progress_body()
+{
+ cat >>script <<'EOF'
+. /etc/rc.subr
+sleep 15 &
+a=$!
+sleep 10 &
+b=$!
+sleep 5 &
+c=$!
+wait_for_pids $a $b $c
+EOF
+ re="^Waiting for PIDS: [0-9]+ [0-9]+ [0-9]+"
+ re="${re}, [0-9]+ [0-9]+"
+ re="${re}, [0-9]+\.$"
+ atf_check -s exit:0 -o match:"${re}" /bin/sh script
+}
+
atf_init_test_cases()
{
atf_add_test_case oomprotect_all
atf_add_test_case oomprotect_yes
+ atf_add_test_case wait_for_pids_progress
}
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, Feb 15, 11:34 AM (3 h, 50 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
28739313
Default Alt Text
D51691.diff (1 KB)
Attached To
Mode
D51691: rc.subr: Fix wait_for_pids
Attached
Detach File
Event Timeline
Log In to Comment