mirror of
https://github.com/openjdk/jdk.git
synced 2026-06-10 20:45:17 +00:00
JDK-8385892
This commit is contained in:
parent
cc69221519
commit
5bfe28b9d7
@ -2765,7 +2765,34 @@ void os::pd_print_cpu_info(outputStream* st, char* buf, size_t buflen) {
|
||||
|
||||
#if INCLUDE_JFR
|
||||
|
||||
// hwm (high water mark) in K for the VM RSS
|
||||
static long jfr_rss_hwm_k = -1;
|
||||
|
||||
void os::jfr_report_memory_info() {
|
||||
os::Linux::accurate_meminfo_t accurate_info;
|
||||
if (os::Linux::query_accurate_process_memory_info(&accurate_info) && accurate_info.rss != -1) {
|
||||
EventResidentSetSize event;
|
||||
event.set_size(accurate_info.rss * K);
|
||||
|
||||
// unfortunately the smaps_rollup/accurate_info contains no hwm (high water mark) for RSS
|
||||
struct rusage ru;
|
||||
if (getrusage(RUSAGE_SELF, &ru) == 0) {
|
||||
if (ru.ru_maxrss > jfr_rss_hwm_k) {
|
||||
jfr_rss_hwm_k = ru.ru_maxrss;
|
||||
}
|
||||
}
|
||||
|
||||
// do not allow larger current RSS than hwm
|
||||
if (accurate_info.rss > jfr_rss_hwm_k) {
|
||||
jfr_rss_hwm_k = accurate_info.rss;
|
||||
}
|
||||
|
||||
event.set_peak(jfr_rss_hwm_k * K);
|
||||
|
||||
event.commit();
|
||||
return;
|
||||
}
|
||||
|
||||
os::Linux::meminfo_t info;
|
||||
if (os::Linux::query_process_memory_info(&info)) {
|
||||
// Send the RSS JFR event
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user