8141641: Runtime: implement range for ErrorLogTimeout
Summary: Implement range=(0, jlong_max/1000)
Reviewed-by: coleenp, ddmitriev, dholmes
--- a/hotspot/src/share/vm/runtime/commandLineFlagRangeList.cpp Tue Nov 17 15:14:29 2015 -0800
+++ b/hotspot/src/share/vm/runtime/commandLineFlagRangeList.cpp Wed Nov 18 10:46:02 2015 -0600
@@ -279,7 +279,7 @@
// Generate func argument to pass into emit_range_xxx functions
#define EMIT_RANGE_CHECK(a, b) , a, b
-#define INITIAL_RANGES_SIZE 204
+#define INITIAL_RANGES_SIZE 205
GrowableArray<CommandLineFlagRange*>* CommandLineFlagRangeList::_ranges = NULL;
// Check the ranges of all flags that have them
--- a/hotspot/src/share/vm/runtime/globals.hpp Tue Nov 17 15:14:29 2015 -0800
+++ b/hotspot/src/share/vm/runtime/globals.hpp Wed Nov 18 10:46:02 2015 -0600
@@ -1031,9 +1031,10 @@
product(bool, CreateCoredumpOnCrash, true, \
"Create core/mini dump on VM fatal error") \
\
- product(uintx, ErrorLogTimeout, 2 * 60, \
+ product(uint64_t, ErrorLogTimeout, 2 * 60, \
"Timeout, in seconds, to limit the time spent on writing an " \
"error log in case of a crash.") \
+ range(0, (uint64_t)max_jlong/1000) \
\
product_pd(bool, UseOSErrorReporting, \
"Let VM fatal error propagate to the OS (ie. WER on Windows)") \
--- a/hotspot/src/share/vm/runtime/thread.cpp Tue Nov 17 15:14:29 2015 -0800
+++ b/hotspot/src/share/vm/runtime/thread.cpp Wed Nov 18 10:46:02 2015 -0600
@@ -1299,7 +1299,7 @@
if (!ShowMessageBoxOnError
&& (OnError == NULL || OnError[0] == '\0')
&& Arguments::abort_hook() == NULL) {
- os::sleep(this, ErrorLogTimeout * 60 * 1000, false);
+ os::sleep(this, (jlong)ErrorLogTimeout * 1000, false); // in seconds
fdStream err(defaultStream::output_fd());
err.print_raw_cr("# [ timer expired, abort... ]");
// skip atexit/vm_exit/vm_abort hooks