-
Bug
-
Resolution: Fixed
-
P4
-
25
-
b18
-
generic
-
linux
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8358716 | 21.0.9 | Matthias Baesken | P4 | Resolved | Fixed | master |
JDK-8361574 | 17.0.17 | Matthias Baesken | P4 | Resolved | Fixed | master |
Hmm, okay.
That means that when we build on an older machine, and Linux kernels change the constant in newer kernel releases, we may use the wrong number.
What I would do is this:
#define SEGV_BNDERR_value 3
#if defined(SEGV_BNDERR)
STATIC_ASSERT(SEGV_BNDERR == SEGV_BNDERR_value);
#else
#define SEGV_BNDERR SEGV_BNDERR_value
#endif
The static assert will alert us if we build on a newer Linux version and turns out we were wrong with our assumed number.
- backported by
-
JDK-8358716 SEGV_BNDERR signal code adjust definition
-
- Resolved
-
-
JDK-8361574 SEGV_BNDERR signal code adjust definition
-
- Resolved
-
- caused by
-
JDK-8352946 SEGV_BND signal code of SIGSEGV missing from our signal-code table
-
- Resolved
-
- links to
-
Commit(master) openjdk/jdk17u-dev/0877d64d
-
Commit(master) openjdk/jdk21u-dev/11ffcd56
-
Commit(master) openjdk/jdk/6abf4e6d
-
Review(master) openjdk/jdk17u-dev/3704
-
Review(master) openjdk/jdk21u-dev/1843
-
Review(master) openjdk/jdk24u/211
-
Review(master) openjdk/jdk/24441