aco/tests: Use _exit in child process
authorMichel Dänzer <mdaenzer@redhat.com>
Tue, 9 Mar 2021 10:53:09 +0000 (11:53 +0100)
committerMarge Bot <eric+marge@anholt.net>
Tue, 16 Mar 2021 15:32:33 +0000 (15:32 +0000)
commitd411691965a2b5c97a81a14e88fc82542b6eade9
treef6efaab31493e717d42879699a172b36d7930465
parent81beef929dba5940985b750a33d919ea727db9f0
aco/tests: Use _exit in child process

Since the child process doesn't call exec(), exit() attempted to run
atexit handlers registered by the parent process. This could result in
the child process hanging in exit() if there were still disk cache
threads alive when the parent process called fork(). (The CI runners
hit this multiple times when running tests in strace)

Fixes: 6a246f5c6d51 "aco/tests: Fix deadlock for too large test lists"
Reviewed-by: Tony Wasserka <tony.wasserka@gmx.de>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/9472>
src/amd/compiler/tests/main.cpp