patch 536 reordered to 537, added patch 536, 8170888-pr3314-rh1390708.patch and 538, 1423421.patch

This commit is contained in:
Jiri Vanek 2017-02-20 11:21:37 +01:00
parent 7cadd8667d
commit c4f741ce3e
3 changed files with 130 additions and 2 deletions

33
1423421.patch Normal file
View File

@ -0,0 +1,33 @@
# HG changeset patch
# User ksrini
# Date 1414764176 25200
# Fri Oct 31 07:02:56 2014 -0700
# Node ID 9fd9a50e7994a9659c5ef21296d0baee4c2eecff
# Parent fd59a2d4313440077fce3fbf39174755a15d285a
8061305: Javadoc crashes when method name ends with "Property"
Reviewed-by: jjg
diff --git jdk8/langtools/src/share/classes/com/sun/tools/doclets/internal/toolkit/util/VisibleMemberMap.java jdk8/langtools/src/share/classes/com/sun/tools/doclets/internal/toolkit/util/VisibleMemberMap.java
--- jdk8/langtools/src/share/classes/com/sun/tools/doclets/internal/toolkit/util/VisibleMemberMap.java
+++ jdk8/langtools/src/share/classes/com/sun/tools/doclets/internal/toolkit/util/VisibleMemberMap.java
@@ -656,6 +656,9 @@
// properties aren't named setA* or getA*
private final Pattern pattern = Pattern.compile("[sg]et\\p{Upper}.*");
private boolean isPropertyMethod(MethodDoc method) {
+ if (!configuration.javafx) {
+ return false;
+ }
if (!method.name().endsWith("Property")) {
return false;
}
@@ -667,7 +670,9 @@
if (pattern.matcher(method.name()).matches()) {
return false;
}
-
+ if (method.typeParameters().length > 0) {
+ return false;
+ }
return 0 == method.parameters().length
&& !"void".equals(method.returnType().simpleTypeName());
}

View File

@ -0,0 +1,83 @@
# HG changeset patch
# User dholmes
# Date 1483660520 18000
# Thu Jan 05 18:55:20 2017 -0500
# Node ID 652fe741b8f2bfdacba66d772cc89fe7ec6dea66
# Parent 9e43b1c17a3ad5b26d64499c72db61a1dc1649f0
8170888, PR3314: [linux] Experimental support for cgroup memory limits in container (ie Docker) environments
Summary: Set apparent physical memory to cgroup memory limit when UseCGroupMemoryLimitForHeap is true
Reviewed-by: acorn, gtriantafill
Contributed-by: Christine Flood <chf@redhat.com>
diff --git a/src/share/vm/runtime/arguments.cpp b/src/share/vm/runtime/arguments.cpp
--- openjdk/hotspot/src/share/vm/runtime/arguments.cpp
+++ openjdk/hotspot/src/share/vm/runtime/arguments.cpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -1768,10 +1768,39 @@
FLAG_SET_CMDLINE(uintx, MaxRAMFraction, DefaultMaxRAMFraction);
}
- const julong phys_mem =
+ julong phys_mem =
FLAG_IS_DEFAULT(MaxRAM) ? MIN2(os::physical_memory(), (julong)MaxRAM)
: (julong)MaxRAM;
+ // Experimental support for CGroup memory limits
+ if (UseCGroupMemoryLimitForHeap) {
+ // This is a rough indicator that a CGroup limit may be in force
+ // for this process
+ const char* lim_file = "/sys/fs/cgroup/memory/memory.limit_in_bytes";
+ FILE *fp = fopen(lim_file, "r");
+ if (fp != NULL) {
+ julong cgroup_max = 0;
+ int ret = fscanf(fp, JULONG_FORMAT, &cgroup_max);
+ if (ret == 1 && cgroup_max > 0) {
+ // If unlimited, cgroup_max will be a very large, but unspecified
+ // value, so use initial phys_mem as a limit
+ if (PrintGCDetails && Verbose) {
+ // Cannot use gclog_or_tty yet.
+ tty->print_cr("Setting phys_mem to the min of cgroup limit ("
+ JULONG_FORMAT "MB) and initial phys_mem ("
+ JULONG_FORMAT "MB)", cgroup_max/M, phys_mem/M);
+ }
+ phys_mem = MIN2(cgroup_max, phys_mem);
+ } else {
+ warning("Unable to read/parse cgroup memory limit from %s: %s",
+ lim_file, errno != 0 ? strerror(errno) : "unknown error");
+ }
+ fclose(fp);
+ } else {
+ warning("Unable to open cgroup memory limit file %s (%s)", lim_file, strerror(errno));
+ }
+ }
+
// If the maximum heap size has not been set with -Xmx,
// then set it as fraction of the size of physical memory,
// respecting the maximum and minimum sizes of the heap.
diff --git a/src/share/vm/runtime/globals.hpp b/src/share/vm/runtime/globals.hpp
--- openjdk/hotspot/src/share/vm/runtime/globals.hpp
+++ openjdk/hotspot/src/share/vm/runtime/globals.hpp
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2017, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -2080,6 +2080,10 @@
"Maximum ergonomically set heap size (in bytes); zero means use " \
"MaxRAM / MaxRAMFraction") \
\
+ experimental(bool, UseCGroupMemoryLimitForHeap, false, \
+ "Use CGroup memory limit as physical memory limit for heap " \
+ "sizing") \
+ \
product(uintx, MaxRAMFraction, 4, \
"Maximum fraction (1/n) of real memory used for maximum heap " \
"size") \

View File

@ -801,7 +801,7 @@ Obsoletes: java-1.7.0-openjdk-accessibility%1
Name: java-%{javaver}-%{origin}
Version: %{javaver}.%{updatever}
Release: 4.%{buildver}%{?dist}
Release: 5.%{buildver}%{?dist}
# java-1.5.0-ibm from jpackage.org set Epoch to 1 for unknown reasons,
# and this change was brought into RHEL-4. java-1.5.0-ibm packages
# also included the epoch in their virtual provides. This created a
@ -929,10 +929,15 @@ Patch526: 6260348-pr3066.patch
# S8162384, PR3122, RH1358661: Performance regression: bimorphic inlining may be bypassed by type speculation
Patch532: 8162384-pr3122-rh1358661.patch
# Patches upstream and appearing in 8u131
# 8170888, PR3314, RH1390708: [linux] Experimental support for cgroup memory limits in container (ie Docker) environments
Patch536: 8170888-pr3314-rh1390708.patch
# Patches upstream and appearing in 8u152
# 8153711, PR3313, RH1284948: [REDO] JDWP: Memory Leak: GlobalRefs never deleted when processing invokeMethod command
Patch535: 8153711-pr3313-rh1284948.patch
Patch536: 1417266.patch
Patch537: 1417266.patch
Patch538: 1423421.patch
# Patches ineligible for 8u
# 8043805: Allow using a system-installed libjpeg
@ -1285,6 +1290,8 @@ sh %{SOURCE12}
%patch533
%patch535
%patch536
%patch537
%patch538
# RHEL-only patches
%if 0%{?rhel}
@ -1929,6 +1936,11 @@ require "copy_jdk_configs.lua"
%endif
%changelog
* Mon Feb 20 2017 jvanek <jvanek@redhat.com> - 1:1.8.0.121-5.b14
- patch 536 reordered to 537
- added patch 536 - Backport "8170888: [linux] Experimental support for cgroup memory limits in container (ie Docker) environments"
- added patch 538 - 1423421: Javadoc crashes when method name ends with "Property"
* Fri Feb 17 2017 jvanek <jvanek@redhat.com> - 1:1.8.0.121-4.b14
- added Patch535 and 526
- tweeked debugsymbols check for sigill