RFR: 8271003: hs_err improvement: handle CLASSPATH env setting longer than O_BUFLEN
David Holmes
dholmes at openjdk.java.net
Mon Aug 2 02:38:30 UTC 2021
On Fri, 30 Jul 2021 18:17:54 GMT, Calvin Cheung <ccheung at openjdk.org> wrote:
> Please review this small enhancement for addressing the problem of the CLASSPATH env variable setting being truncated in a hs err log.
>
> For printing a char string, it doesn't need to go through `do_vsnprintf()` which does the truncation based on the input buffer length. The change is local to the code path pertaining to hs err log.
>
> Testing:
>
> - [x] tiers 1, 2 (including the new test)
Hi Calvin,
Not sure about this ... still thinking.
In the meantime see couple of comments below.
Thanks,
David
src/hotspot/share/utilities/ostream.cpp line 140:
> 138: str = format;
> 139: len = strlen(str);
> 140: } else if (format[0] == '%' && format[1] == 's' && format[2] == '\0') {
Why are you assuming the %s must be at the beginning rather than "blah blah %s blah" ?
test/hotspot/jtreg/runtime/ErrorHandling/ClassPathEnvVar.java line 53:
> 51: private static final String end_path = "end-path";
> 52:
> 53: private static class Crasher {
Can't you just use one of the existing -XX:ErrorHandlerTest=n values to trigger the crash?
-------------
PR: https://git.openjdk.java.net/jdk/pull/4947
More information about the hotspot-runtime-dev
mailing list