mirror of
https://github.com/asterinas/asterinas.git
synced 2025-06-21 08:26:30 +00:00
When calling clone() and clone3(), the user is allowed to specify a signal to be sent to the parent process on exit. Respect this value by storing it in the Process struct and sending the signal on exit. Add a test as well to verify that the signal is properly delivered to the parent.
40 lines
686 B
Bash
Executable File
40 lines
686 B
Bash
Executable File
#!/bin/sh
|
|
|
|
# SPDX-License-Identifier: MPL-2.0
|
|
|
|
set -e
|
|
|
|
SCRIPT_DIR=/test
|
|
cd ${SCRIPT_DIR}/..
|
|
|
|
echo "Start process test......"
|
|
# These test programs are sorted by name.
|
|
tests="
|
|
clone3/clone_exit_signal
|
|
clone3/clone_no_exit_signal
|
|
clone3/clone_process
|
|
execve/execve
|
|
eventfd2/eventfd2
|
|
fork/fork
|
|
fork_c/fork
|
|
getpid/getpid
|
|
hello_pie/hello
|
|
hello_world/hello_world
|
|
itimer/setitimer
|
|
itimer/timer_create
|
|
mmap/mmap_and_fork
|
|
mmap/mmap_shared_filebacked
|
|
mmap/mmap_readahead
|
|
pthread/pthread_test
|
|
pty/open_pty
|
|
signal_c/parent_death_signal
|
|
signal_c/signal_test
|
|
"
|
|
|
|
for testcase in ${tests}
|
|
do
|
|
echo "Running test ${testcase}......"
|
|
${SCRIPT_DIR}/${testcase}
|
|
done
|
|
echo "All process test passed."
|