8272472: StackGuardPages test doesn't build with glibc 2.34

Reviewed-by: shade, stuefe, jiefu
This commit is contained in:
David Holmes 2021-08-22 01:13:27 +00:00
parent 04a806ec86
commit f77a1a156f

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2010, 2020, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2010, 2021, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@ -68,8 +68,17 @@ static void handler(int sig, siginfo_t *si, void *unused) {
longjmp(context, 1);
}
static char* altstack = NULL;
void set_signal_handler() {
static char altstack[SIGSTKSZ];
if (altstack == NULL) {
// Dynamically allocated in case SIGSTKSZ is not constant
altstack = malloc(SIGSTKSZ);
if (altstack == NULL) {
fprintf(stderr, "Test ERROR. Unable to malloc altstack space\n");
exit(7);
}
}
stack_t ss = {
.ss_size = SIGSTKSZ,