]> git.ipfire.org Git - thirdparty/valgrind.git/commit
FreeBSD: make rfork() fail more gracefully
authorPaul Floyd <pjfloyd@wanadoo.fr>
Sat, 25 Feb 2023 14:16:35 +0000 (15:16 +0100)
committerPaul Floyd <pjfloyd@wanadoo.fr>
Sat, 25 Feb 2023 14:16:35 +0000 (15:16 +0100)
commitb861458d3dcb8340a47c342ef161089594b18898
treed2cbbc35def8681362d542c1c7f955b08d70eb0d
parente61a04babcc3de8c1c86638f8ccdb4ef1b74a4d0
FreeBSD: make rfork() fail more gracefully

rfork() is barely used in base FreeBSD. The main use
is in posix_spawn(). If rfork() fails with EINVAL
then it falls back to using vfork(). This is preferable
to Valgrind bombing.

ksh93 uses posix_spawn. I tested bash and csh and they had
no problems.

Also add 'hello world" smoke tests for bash csh and ksh
17 files changed:
NEWS
coregrind/m_syswrap/syswrap-amd64-freebsd.c
coregrind/m_syswrap/syswrap-x86-freebsd.c
include/vki/vki-freebsd.h
none/tests/freebsd/Makefile.am
none/tests/freebsd/bash_test.sh [new file with mode: 0755]
none/tests/freebsd/bash_test.stderr.exp [new file with mode: 0644]
none/tests/freebsd/bash_test.stdout.exp [new file with mode: 0644]
none/tests/freebsd/bash_test.vgtest [new file with mode: 0644]
none/tests/freebsd/csh_test.csh [new file with mode: 0755]
none/tests/freebsd/csh_test.stderr.exp [new file with mode: 0644]
none/tests/freebsd/csh_test.stdout.exp [new file with mode: 0644]
none/tests/freebsd/csh_test.vgtest [new file with mode: 0644]
none/tests/freebsd/ksh_test.ksh [new file with mode: 0755]
none/tests/freebsd/ksh_test.stderr.exp [new file with mode: 0644]
none/tests/freebsd/ksh_test.stdout.exp [new file with mode: 0644]
none/tests/freebsd/ksh_test.vgtest [new file with mode: 0644]