posix_spawn: mark error as volatile

In the case of an error, the RFSPAWN'd thread will write back to psa->error
with the correct exit code. Mark this as volatile as the return value is
being actively dorked up for erroneous exits on !x86.

This fixes the following tests, tested on aarch64 (only under qemu, at the
moment):

- posix_spawn/spawn_test:t_spawn_missing
- posix_spawn/spawn_test:t_spawn_nonexec
- posix_spawn/spawn_test:t_spawn_zero

Reported by:	mikael
MFC after:	3 days
This commit is contained in:
Kyle Evans 2020-01-21 22:02:53 +00:00
parent 10f2d3f857
commit a1fa478b1c
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=356951

View File

@ -201,7 +201,7 @@ struct posix_spawn_args {
char * const * argv;
char * const * envp;
int use_env_path;
int error;
volatile int error;
};
#if defined(__i386__) || defined(__amd64__)