Backport: debug/tst-longjmp_chk3 needs to be enabled
Resolves: RHEL-68850
This commit is contained in:
		
							parent
							
								
									13a2c1bb05
								
							
						
					
					
						commit
						323df51371
					
				
							
								
								
									
										76
									
								
								glibc-RHEL-68850-1.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										76
									
								
								glibc-RHEL-68850-1.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,76 @@ | |||||||
|  | commit 4b7cfcc3fbfab55a1bbb32a2da69c048060739d6 | ||||||
|  | Author: Florian Weimer <fweimer@redhat.com> | ||||||
|  | Date:   Mon Nov 25 17:32:54 2024 +0100 | ||||||
|  | 
 | ||||||
|  |     debug: Wire up tst-longjmp_chk3 | ||||||
|  |      | ||||||
|  |     The test was added in commit ac8cc9e300a002228eb7e660df3e7b333d9a7414 | ||||||
|  |     without all the required Makefile scaffolding.  Tweak the test | ||||||
|  |     so that it actually builds (including with dynamic SIGSTKSZ). | ||||||
|  |      | ||||||
|  |     Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org> | ||||||
|  | 
 | ||||||
|  | Conflicts: | ||||||
|  | 	debug/Makefile (fixup context) | ||||||
|  | 
 | ||||||
|  | diff --git a/debug/Makefile b/debug/Makefile
 | ||||||
|  | index 9fbc40dc69b477ca..ddae3817aef9afad 100644
 | ||||||
|  | --- a/debug/Makefile
 | ||||||
|  | +++ b/debug/Makefile
 | ||||||
|  | @@ -192,13 +192,14 @@ tests = backtrace-tst \
 | ||||||
|  |  	test-strcpy_chk \ | ||||||
|  |  	test-stpcpy_chk \ | ||||||
|  |  	tst-longjmp_chk2 \ | ||||||
|  | +	tst-longjmp_chk3 \
 | ||||||
|  |  	tst-backtrace2 \ | ||||||
|  |  	tst-backtrace3 \ | ||||||
|  |  	tst-backtrace4 \ | ||||||
|  |  	tst-backtrace5 \ | ||||||
|  |  	tst-backtrace6 \ | ||||||
|  |  	tst-realpath-chk \ | ||||||
|  | -	$(tests-all-chk)
 | ||||||
|  | +	$(tests-all-chk) \
 | ||||||
|  |   | ||||||
|  |  ifeq ($(have-ssp),yes) | ||||||
|  |  tests += tst-ssp-1 | ||||||
|  | diff --git a/debug/tst-longjmp_chk3.c b/debug/tst-longjmp_chk3.c
 | ||||||
|  | index 4434937c597dbe10..dfdecca9ef8a1cf6 100644
 | ||||||
|  | --- a/debug/tst-longjmp_chk3.c
 | ||||||
|  | +++ b/debug/tst-longjmp_chk3.c
 | ||||||
|  | @@ -18,9 +18,12 @@
 | ||||||
|  |   | ||||||
|  |  #include <setjmp.h> | ||||||
|  |  #include <signal.h> | ||||||
|  | +#include <stdio.h>
 | ||||||
|  |  #include <string.h> | ||||||
|  |   | ||||||
|  | -static char buf[SIGSTKSZ * 4];
 | ||||||
|  | +#include <support/support.h>
 | ||||||
|  | +
 | ||||||
|  | +static char *buf;
 | ||||||
|  |  static jmp_buf jb; | ||||||
|  |   | ||||||
|  |  static void | ||||||
|  | @@ -49,8 +52,10 @@ do_test (void)
 | ||||||
|  |    set_fortify_handler (handler); | ||||||
|  |   | ||||||
|  |    /* Create a valid signal stack and enable it.  */ | ||||||
|  | +  size_t bufsize = SIGSTKSZ * 4;
 | ||||||
|  | +  buf = xmalloc (bufsize);
 | ||||||
|  |    ss.ss_sp = buf; | ||||||
|  | -  ss.ss_size = sizeof (buf);
 | ||||||
|  | +  ss.ss_size = bufsize;
 | ||||||
|  |    ss.ss_flags = 0; | ||||||
|  |    if (sigaltstack (&ss, NULL) < 0) | ||||||
|  |      { | ||||||
|  | @@ -65,8 +70,8 @@ do_test (void)
 | ||||||
|  |   | ||||||
|  |    /* Shrink the signal stack so the jmpbuf is now invalid. | ||||||
|  |       We adjust the start & end to handle stacks that grow up & down.  */ | ||||||
|  | -  ss.ss_sp = buf + sizeof (buf) / 2;
 | ||||||
|  | -  ss.ss_size = sizeof (buf) / 4;
 | ||||||
|  | +  ss.ss_sp = buf + bufsize / 2;
 | ||||||
|  | +  ss.ss_size = bufsize / 4;
 | ||||||
|  |    if (sigaltstack (&ss, NULL) < 0) | ||||||
|  |      { | ||||||
|  |        printf ("second sigaltstack failed: %m\n"); | ||||||
							
								
								
									
										20
									
								
								glibc-RHEL-68850-2.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										20
									
								
								glibc-RHEL-68850-2.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,20 @@ | |||||||
|  | commit 4836a9af89f1b4d482e6c72ff67e36226d36434c | ||||||
|  | Author: Florian Weimer <fweimer@redhat.com> | ||||||
|  | Date:   Tue Nov 26 19:26:13 2024 +0100 | ||||||
|  | 
 | ||||||
|  |     debug: Fix tst-longjmp_chk3 build failure on Hurd | ||||||
|  |      | ||||||
|  |     Explicitly include <unistd.h> for _exit and getpid. | ||||||
|  | 
 | ||||||
|  | diff --git a/debug/tst-longjmp_chk3.c b/debug/tst-longjmp_chk3.c
 | ||||||
|  | index dfdecca9ef8a1cf6..254cd671902ca9a0 100644
 | ||||||
|  | --- a/debug/tst-longjmp_chk3.c
 | ||||||
|  | +++ b/debug/tst-longjmp_chk3.c
 | ||||||
|  | @@ -20,6 +20,7 @@
 | ||||||
|  |  #include <signal.h> | ||||||
|  |  #include <stdio.h> | ||||||
|  |  #include <string.h> | ||||||
|  | +#include <unistd.h>
 | ||||||
|  |   | ||||||
|  |  #include <support/support.h> | ||||||
|  |   | ||||||
| @ -1048,6 +1048,8 @@ Patch740: glibc-RHEL-65910.patch | |||||||
| Patch741: glibc-RHEL-69028.patch | Patch741: glibc-RHEL-69028.patch | ||||||
| Patch742: glibc-RHEL-70395-1.patch | Patch742: glibc-RHEL-70395-1.patch | ||||||
| Patch743: glibc-RHEL-70395-2.patch | Patch743: glibc-RHEL-70395-2.patch | ||||||
|  | Patch744: glibc-RHEL-68850-1.patch | ||||||
|  | Patch745: glibc-RHEL-68850-2.patch | ||||||
| 
 | 
 | ||||||
| ############################################################################## | ############################################################################## | ||||||
| # Continued list of core "glibc" package information: | # Continued list of core "glibc" package information: | ||||||
| @ -3057,6 +3059,7 @@ update_gconv_modules_cache () | |||||||
| - Backport: testsuite fixes for rhel-57588, rhel-57589, and rhel-57590 (RHEL-65910) | - Backport: testsuite fixes for rhel-57588, rhel-57589, and rhel-57590 (RHEL-65910) | ||||||
| - Backport new multi-threaded test for sem_getvalue (RHEL-69028) | - Backport new multi-threaded test for sem_getvalue (RHEL-69028) | ||||||
| - Backport pthread_getcpuclockid tests (RHEL-70395) | - Backport pthread_getcpuclockid tests (RHEL-70395) | ||||||
|  | - Backport: Debug/tst-longjmp_chk3 needs to be enabled (RHEL-68850) | ||||||
| 
 | 
 | ||||||
| * Thu Dec 19 2024 DJ Delorie <dj@redhat.com> - 2.34-148 | * Thu Dec 19 2024 DJ Delorie <dj@redhat.com> - 2.34-148 | ||||||
| - Increase ungetc test coverage, guarantee single char pushback (RHEL-46738) | - Increase ungetc test coverage, guarantee single char pushback (RHEL-46738) | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user