8234397: add OS uptime information to os::print_os_info output
Schmidt, Lutz
lutz.schmidt at sap.com
Wed Nov 27 15:35:50 UTC 2019
Matthias,
your change looks good to me overall. Please note: I'm not a Reviewer!
I feel the urge to complain about one thing, though:
When calculating the uptime in days, you divide the time retrieved from the system (usually seconds or milliseconds) by a large number. Why do you force that number to be a float? I would prefer the denominator to be an "int" value.
Rationale: floats (32bits) are very limited in precision, only y6 to 7 decimal digits. At least in the windows case, where you obtain milliseconds from the system, your denominator is 86,400,000. At first glance, that does not fit into a float mantissa. What saves you here are the prime factors "2" (10 in total). As a result, you only need 17 mantissa bits to represent the denominator.
Thanks,
Lutz
On 25.11.19, 09:06, "hotspot-dev on behalf of Baesken, Matthias" <hotspot-dev-bounces at openjdk.java.net on behalf of matthias.baesken at sap.com> wrote:
>
> The comment in the posix code mentions that it doesn't work on macOS but
> doesn't say anything about Linux. Has it been tested on Solaris?
>
Hi David, it works on Solaris .
I think I should adjust the comment (saying macOS AND Linux) .
Best regards, Matthias
> >
> > One example that occurred last week - my colleague Christoph and me
> were browsing through an hs_err file of a crash on AIX .
> > When looking into the hs_err we wanted to know the uptime because
> our latest fontconfig - patches (for getting rid of the crash) needed a
> reboot too to really work .
> > Unfortunately we could not find the info , and we were disappointed (
> then we noticed the crash is from OpenJDK and not our internal JVM ).
> >
> >
> >>> Bug/webrev :
> >>> https://bugs.openjdk.java.net/browse/JDK-8234397
> >>> http://cr.openjdk.java.net/~mbaesken/webrevs/8234397.1/
> >>
> >> Can Linux not use the POSIX version?
> >>
> >
> > Unfortunately the posix code does not give the desired result on Linux (at
> least on my test machines).
>
> The comment in the posix code mentions that it doesn't work on macOS but
> doesn't say anything about Linux. Has it been tested on Solaris?
>
> I'm really unsure about this code and am hoping someone more
> knowledgeable in this areas can chime in. I'd be less concerned if there
> was a single POSIX implementation that worked everywhere. :( Though I
> have my general concern about adding yet another potential point of
> failure in the error reporting logic.
>
> Thanks,
> David
>
> > Best regards, Matthias
> >
More information about the hotspot-dev
mailing list