Date: Tue, 21 Jan 2020 22:02:54 +0000 (UTC) From: Kyle Evans <kevans@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r356951 - head/lib/libc/gen Message-ID: <202001212202.00LM2sZS030543@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: kevans Date: Tue Jan 21 22:02:53 2020 New Revision: 356951 URL: https://svnweb.freebsd.org/changeset/base/356951 Log: 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 Modified: head/lib/libc/gen/posix_spawn.c Modified: head/lib/libc/gen/posix_spawn.c ============================================================================== --- head/lib/libc/gen/posix_spawn.c Tue Jan 21 20:32:49 2020 (r356950) +++ head/lib/libc/gen/posix_spawn.c Tue Jan 21 22:02:53 2020 (r356951) @@ -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__)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202001212202.00LM2sZS030543>