Module Name: src Committed By: riastradh Date: Mon Nov 27 22:18:29 UTC 2023
Modified Files: src/tests/lib/libpthread: t_stack.c Log Message: libpthread/t_stack: Appease gcc12 maybe-uninitialized warning. The jmp_buf is not, in fact, uninitialized at the point of use, but it doesn't hurt to narrow the scope a bit to between when the jmp_buf is initialized by setjmp, and when the signal handler might be called after sigaction. Noted by prlw1. PR lib/57721 XXX pullup-10 XXX pullup-9 XXX pullup-8 To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/tests/lib/libpthread/t_stack.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/tests/lib/libpthread/t_stack.c diff -u src/tests/lib/libpthread/t_stack.c:1.3 src/tests/lib/libpthread/t_stack.c:1.4 --- src/tests/lib/libpthread/t_stack.c:1.3 Mon Nov 27 22:17:41 2023 +++ src/tests/lib/libpthread/t_stack.c Mon Nov 27 22:18:29 2023 @@ -1,4 +1,4 @@ -/* $NetBSD: t_stack.c,v 1.3 2023/11/27 22:17:41 riastradh Exp $ */ +/* $NetBSD: t_stack.c,v 1.4 2023/11/27 22:18:29 riastradh Exp $ */ /*- * Copyright (c) 2023 The NetBSD Foundation, Inc. @@ -29,7 +29,7 @@ #define _KMEMUSER /* __MACHINE_STACK_GROWS_UP */ #include <sys/cdefs.h> -__RCSID("$NetBSD: t_stack.c,v 1.3 2023/11/27 22:17:41 riastradh Exp $"); +__RCSID("$NetBSD: t_stack.c,v 1.4 2023/11/27 22:18:29 riastradh Exp $"); #include <sys/mman.h> #include <sys/param.h> @@ -216,8 +216,8 @@ checksigsegv(const char *p) memset(&act, 0, sizeof(act)); act.sa_handler = &sigsegv_ok; - pthread_setspecific(C->jmp_key, &j); if (setjmp(j.buf) == 0) { + pthread_setspecific(C->jmp_key, &j); RL(sigaction(SIGSEGV, &act, &oact)); oactsave = oact; v = *p; /* trigger SIGSEGV */ @@ -249,8 +249,8 @@ checknosigsegv(const char *p) memset(&act, 0, sizeof(act)); act.sa_handler = &sigsegv_ok; - pthread_setspecific(C->jmp_key, &j); if (setjmp(j.buf) == 0) { + pthread_setspecific(C->jmp_key, &j); RL(sigaction(SIGSEGV, &act, &oact)); oactsave = oact; v = *p; /* better not trigger SIGSEGV */