diff --git a/.gitignore b/.gitignore
index 57e6f50..2e1256f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,2 @@
-SOURCES/openjdk-jdk11u-jdk-11.0.16+8-4curve.tar.xz
+SOURCES/openjdk-jdk11u-jdk-11.0.18+9-4curve.tar.xz
 SOURCES/tapsets-icedtea-6.0.0pre00-c848b93a8598.tar.xz
diff --git a/.java-11-openjdk.metadata b/.java-11-openjdk.metadata
index 2ec0c41..3dbdfc7 100644
--- a/.java-11-openjdk.metadata
+++ b/.java-11-openjdk.metadata
@@ -1,2 +1,2 @@
-221ac8e48cf86a97fa03d6f628461a3a815d4cbb SOURCES/openjdk-jdk11u-jdk-11.0.16+8-4curve.tar.xz
+99b83c6bd4a99a9763594c4e3f661b983af6e031 SOURCES/openjdk-jdk11u-jdk-11.0.18+9-4curve.tar.xz
 c8281ee37b77d535c9c1af86609a531958ff7b34 SOURCES/tapsets-icedtea-6.0.0pre00-c848b93a8598.tar.xz
diff --git a/SOURCES/NEWS b/SOURCES/NEWS
index b365726..28e8529 100644
--- a/SOURCES/NEWS
+++ b/SOURCES/NEWS
@@ -3,6 +3,669 @@ Key:
 JDK-X  - https://bugs.openjdk.java.net/browse/JDK-X
 CVE-XXXX-YYYY: https://cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY
 
+New in release OpenJDK 11.0.18 (2023-01-17):
+=============================================
+Live versions of these release notes can be found at:
+  * https://bit.ly/openjdk11018
+  * https://builds.shipilev.net/backports-monitor/release-notes-11.0.18.html
+
+* Other changes
+  - JDK-4819544: SwingSet2 JTable Demo throws NullPointerException
+  - JDK-6782021: It is not possible to read local computer certificates with the SunMSCAPI provider
+  - JDK-6829250: Reg test: java/awt/Toolkit/ScreenInsetsTest/ScreenInsetsTest.java fails in Windows
+  - JDK-7001973: java/awt/Graphics2D/CopyAreaOOB.java fails
+  - JDK-8022403: sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java fails
+  - JDK-8028998: [TEST_BUG] [macosx] java/awt/dnd/DropTargetEnterExitTest/MissedDragExitTest.java failed
+  - JDK-8029633: Raw inner class constructor ref should not perform diamond inference
+  - JDK-8030121: java/awt/dnd/MissingDragExitEventTest/MissingDragExitEventTest.java fails
+  - JDK-8079267: [TEST_BUG] Test java/awt/Frame/MiscUndecorated/RepaintTest.java fails
+  - JDK-8129827: [TEST_BUG] Test java/awt/Robot/RobotWheelTest/RobotWheelTest.java fails
+  - JDK-8159599: [TEST_BUG] java/awt/Modal/ModalInternalFrameTest/ModalInternalFrameTest.java
+  - JDK-8169187: [macosx] Aqua: java/awt/image/multiresolution/MultiresolutionIconTest.java
+  - JDK-8172269: When checking the default behaviour for a scroll tab layout and checking the 'opaque' checkbox, the area behind tabs is not red.
+  - JDK-8178698: javax/sound/midi/Sequencer/MetaCallback.java failed with timeout
+  - JDK-8193942: Regression automated test '/open/test/jdk/javax/swing/JFrame/8175301/ScaledFrameBackgroundTest.java' fails
+  - JDK-8194126: Regression automated Test '/open/test/jdk/javax/swing/JColorChooser/Test7194184.java' fails
+  - JDK-8198343: Test java/awt/print/PrinterJob/TestPgfmtSetMPA.java may fail w/o printer
+  - JDK-8199290: [TESTBUG] sun.hotspot.WhiteBox$WhiteBoxPermission is not copied
+  - JDK-8202836: [macosx] test java/awt/Graphics/TextAAHintsTest.java fails
+  - JDK-8206125: [windows] cannot pass relative path to --with-boot-jdk
+  - JDK-8210047: some pages contain content outside of landmark region
+  - JDK-8211002: test/jdk/java/lang/Math/PowTests.java skips testing for non-corner-case values
+  - JDK-8212096: javax/net/ssl/ServerName/SSLEngineExplorerMatchedSNI.java failed intermittently due to SSLException: Tag mismatch
+  - JDK-8213239: Configure cannot handle command overrides with arguments
+  - JDK-8215571: jdb does not include jdk.* in the default class filter
+  - JDK-8217032: Check pandoc capabilities in configure
+  - JDK-8222091: Javadoc does not handle package annotations correctly on package-info.java
+  - JDK-8222251: preflow visitor is not visiting lambda expressions
+  - JDK-8226236: win32: gc/metaspace/TestCapacityUntilGCWrapAround.java fails
+  - JDK-8227179: Test for new gc+metaspace=info output format
+  - JDK-8227651: Tests fail with SSLProtocolException: Input record too big
+  - JDK-8228672: [TESTBUG] gc/metaspace/TestSizeTransitions.java fails on 32-bit platforms
+  - JDK-8233557: [TESTBUG] DoubleClickTitleBarTest.java fails on macOs
+  - JDK-8233558: [TESTBUG] WindowOwnedByEmbeddedFrameTest.java fails on macos
+  - JDK-8233565: [TESTBUG] NullModalityDialogTest.java fails on MacOS
+  - JDK-8233648: [TESTBUG] DefaultMenuBarTest.java failing on macos
+  - JDK-8239708: Split basics.m4 into basic.m4 and util.m4
+  - JDK-8240281: Remove failing assertion code when selecting first memory state in SuperWord::co_locate_pack
+  - JDK-8242468: VS2019 build missing vcruntime140_1.dll
+  - JDK-8243565: some gc tests use 'test.java.opts' and not 'test.vm.opts'
+  - JDK-8243568: serviceability/logging/TestLogRotation.java uses 'test.java.opts' and not 'test.vm.opts'
+  - JDK-8244010: Simplify usages of ProcessTools.createJavaProcessBuilder in our tests
+  - JDK-8244557: test/jdk/javax/swing/JTabbedPane/TestBackgroundScrollPolicy.java failed
+  - JDK-8247676: vcruntime140_1.dll is not needed on 32-bit Windows
+  - JDK-8249694: java/lang/StringBuffer/HugeCapacity.java and j/l/StringBuilder/HugeCapacity.java tests shouldn't be @ignore-d
+  - JDK-8253877: gc/g1/TestGCLogMessages.java fails - missing "Evacuation failure" message
+  - JDK-8254874: ZGC: JNIHandleBlock verification failure in stack watermark processing
+  - JDK-8254976: Re-enable swing jtreg tests which were broken due to samevm mode
+  - JDK-8255439: System Tray icons get corrupted when Windows scaling changes
+  - JDK-8256109: Create implementation for NSAccessibilityButton protocol
+  - JDK-8257679: Improved unix compatibility layer in Windows build (winenv)
+  - JDK-8257722: Improve "keytool -printcert -jarfile" output
+  - JDK-8258005: JDK build fails with incorrect fixpath script
+  - JDK-8259485: Document need for short paths when building on Windows
+  - JDK-8260272: bash configure --prefix does not work after JDK-8257679
+  - JDK-8261336: IGV: enhance default filters
+  - JDK-8261445: Use memory_order_relaxed for os::random().
+  - JDK-8261758: [TESTBUG] gc/g1/TestGCLogMessages.java fails if ergonomics detect too small InitialHeapSize
+  - JDK-8263326: Remove ReceiverTypeData check from serviceability/sa/TestPrintMdo.java
+  - JDK-8263871: On sem_destroy() failing we should assert
+  - JDK-8264593: debug.cpp utilities should be available in product builds.
+  - JDK-8264666: Change implementation of safeAdd/safeMult in the LCMSImageLayout class
+  - JDK-8266082: AssertionError in Annotate.fromAnnotations with -Xdoclint
+  - JDK-8266967: debug.cpp utility find() should print Java Object fields.
+  - JDK-8268361: Fix the infinite loop in next_line
+  - JDK-8268860: Windows-Aarch64 build is failing in GitHub actions
+  - JDK-8268893: jcmd to trim the glibc heap
+  - JDK-8269029: compiler/codegen/TestCharVect2.java fails for client VMs
+  - JDK-8269873: serviceability/sa/Clhsdb tests are using a C2 specific VMStruct field
+  - JDK-8272123: Problem list 4 jtreg tests which regularly fail on macos-aarch64
+  - JDK-8273236: keytool does not accurately warn about algorithms that are disabled but have additional constraints
+  - JDK-8273553: sun.security.ssl.SSLEngineImpl.closeInbound also has similar error of JDK-8253368
+  - JDK-8273578: javax/swing/JMenu/4515762/bug4515762.java fails on macOS 12
+  - JDK-8273685: Remove jtreg tag manual=yesno for  java/awt/Graphics/LCDTextAndGraphicsState.java & show test instruction
+  - JDK-8274029: Remove jtreg tag manual=yesno for  java/awt/print/Dialog/DialogOrient.java
+  - JDK-8274032: Remove jtreg tag manual=yesno for java/awt/print/PrinterJob/ImagePrinting/ImageTypes.java & show test UI
+  - JDK-8274296: Update or Problem List tests which may fail with uiScale=2 on macOS
+  - JDK-8274456: Remove jtreg tag manual=yesno  java/awt/print/PrinterJob/PageDialogTest.java
+  - JDK-8274563: jfr/event/oldobject/TestClassLoaderLeak.java fails when GC cycles are not happening
+  - JDK-8274597: Some of the dnd tests time out and fail intermittently
+  - JDK-8275170: Some jtreg sound tests should be marked with sound keyword
+  - JDK-8275535: Retrying a failed authentication on multiple LDAP servers can lead to users blocked
+  - JDK-8276841: Add support for Visual Studio 2022
+  - JDK-8277159: Fix java/nio/file/FileStore/Basic.java test by ignoring /run/user/* mount points
+  - JDK-8277497: Last column cell in the JTable row is read as empty cell
+  - JDK-8277881: Missing SessionID in TLS1.3 resumption in compatibility mode
+  - JDK-8277970: Test jdk/sun/security/ssl/SSLSessionImpl/NoInvalidateSocketException.java fails with "tag mismatch"
+  - JDK-8279066: entries.remove(entry) is useless in PKCS12KeyStore
+  - JDK-8279695: [TESTBUG] modify compiler/loopopts/TestSkeletonPredicateNegation.java to run on C1 also
+  - JDK-8280158: New test from JDK-8274736 failed with/without patch in JDK11u
+  - JDK-8280550: SplittableRandom#nextDouble(double,double) can return result >= bound
+  - JDK-8280863: Update build README to reflect that MSYS2 is supported
+  - JDK-8280890: Cannot use '-Djava.system.class.loader' with class loader in signed JAR
+  - JDK-8280948: Write a regression test for JDK-4659800
+  - JDK-8280950: RandomGenerator:NextDouble() default behavior non conformant after JDK-8280550 fix
+  - JDK-8281183: RandomGenerator:NextDouble() default behavior partially fixed by JDK-8280950
+  - JDK-8281296: Create a regression test for JDK-4515999
+  - JDK-8281297: TestStressG1Humongous fails with guarantee(is_range_uncommitted)
+  - JDK-8282046: Create a regression test for JDK-8000326
+  - JDK-8282276: Problem list failing two Robot Screen Capture tests
+  - JDK-8282306: os::is_first_C_frame(frame*) crashes on invalid link access
+  - JDK-8282345: handle latest VS2022 in abstract_vm_version
+  - JDK-8282402: Create a regression test for JDK-4666101
+  - JDK-8282640: Create a test for JDK-4740761
+  - JDK-8282642: vmTestbase/gc/gctests/LoadUnloadGC2/LoadUnloadGC2.java fails intermittently with exit code 1
+  - JDK-8282730: LdapLoginModule throw NPE from logout method after login failure
+  - JDK-8282777: Create a Regression test for JDK-4515031
+  - JDK-8282778: Create a regression test for JDK-4699544
+  - JDK-8282857: Create a regression test for JDK-4702690
+  - JDK-8282936: Write a regression test for JDK-4615365
+  - JDK-8282937: Write a regression test for JDK-4820080
+  - JDK-8283199: Linux os::cpu_microcode_revision() stalls cold startup
+  - JDK-8283422: Create a new test for JDK-8254790
+  - JDK-8284294: Create an automated regression test for RFE 4138746
+  - JDK-8284358: Unreachable loop is not removed from C2 IR, leading to a broken graph
+  - JDK-8284521: Write an automated regression test for RFE 4371575
+  - JDK-8284690: [macos] VoiceOver : Getting java.lang.IllegalArgumentException: Invalid location on Editable JComboBox
+  - JDK-8284732: FFI_GO_CLOSURES macro not defined but required for zero build on Mac OS X
+  - JDK-8284752: Zero does not build on Mac OS X due to missing os::current_thread_enable_wx implementation
+  - JDK-8284771: java/util/zip/CloseInflaterDeflaterTest.java failed with "AssertionError: Expected IOException to be thrown, but nothing was thrown"
+  - JDK-8284884: Replace polling with waiting in javax/swing/text/html/parser/Parser/8078268/bug8078268.java
+  - JDK-8284977: MetricsTesterCgroupV2.getLongValueEntryFromFile fails when named value doesn't exist
+  - JDK-8285305: Create an automated test for JDK-4495286
+  - JDK-8285373: Create an automated test for JDK-4702233
+  - JDK-8285604: closed sun/java2d/GdiRendering/ClipShapeRendering.java failed with "Incorrect color ffeeeeee instead of ff0000ff in pixel (100, 100)"
+  - JDK-8285617: Fix java/awt/print/PrinterJob/ImagePrinting/PrintARGBImage.java manual test
+  - JDK-8285698: Create a test to check the focus stealing of JPopupMenu from JComboBox
+  - JDK-8285794: AsyncGetCallTrace might acquire a lock via JavaThread::thread_from_jni_environment
+  - JDK-8285836: sun/net/www/http/KeepAliveCache/KeepAliveProperty.java failed with "RuntimeException: Failed in server"
+  - JDK-8285921: serviceability/dcmd/jvmti/AttachFailed/AttachReturnError.java fails on Alpine
+  - JDK-8286624: Regression Test CoordinateTruncationBug.java fails on OL8.3
+  - JDK-8286663: Resolve IDE warnings in WTrayIconPeer and SystemTray
+  - JDK-8286772: java/awt/dnd/DropTargetInInternalFrameTest/DropTargetInInternalFrameTest.html times out and fails in Windows
+  - JDK-8286872: Refactor add/modify notification icon (TrayIcon)
+  - JDK-8287076: Document.normalizeDocument() produces different results
+  - JDK-8287091: aarch64 : guarantee(val < (1ULL << nbits)) failed: Field too big for insn
+  - JDK-8287425: Remove unnecessary register push for MacroAssembler::check_klass_subtype_slow_path
+  - JDK-8287609: macOS: SIGSEGV at [CoreFoundation] CFArrayGetCount / sun.font.CFont.getTableBytesNative
+  - JDK-8287724: Fix various issues with msys2
+  - JDK-8287826: javax/accessibility/4702233/AccessiblePropertiesTest.java fails to compile
+  - JDK-8287895: Some langtools tests fail on msys2
+  - JDK-8287896: PropertiesTest.sh fail on msys2
+  - JDK-8287902: UnreadableRB case in MissingResourceCauseTest is not working reliably on Windows
+  - JDK-8287917: System.loadLibrary does not work on Big Sur if JDK is built with macOS SDK 10.15 and earlier
+  - JDK-8288132: Update test artifacts in QuoVadis CA interop tests
+  - JDK-8288302: Shenandoah: SIGSEGV in vm maybe related to jit compiling xerces
+  - JDK-8288377: [REDO] DST not applying properly with zone id offset set with TZ env variable
+  - JDK-8288445: AArch64: C2 compilation fails with guarantee(!true || (true && (shift != 0))) failed: impossible encoding
+  - JDK-8288599: com/sun/management/OperatingSystemMXBean/TestTotalSwap.java: Expected total swap size ... but getTotalSwapSpaceSize returned ...
+  - JDK-8288985: P11TlsKeyMaterialGenerator should work with ChaCha20-Poly1305
+  - JDK-8289043: C2: Vector constant materialization attempt
+  - JDK-8289146: containers/docker/TestMemoryWithCgroupV1.java fails on linux ppc64le machine with missing Memory and Swap Limit output
+  - JDK-8290207: Missing notice in dom.md
+  - JDK-8290209: jcup.md missing additional text
+  - JDK-8290451: Incorrect result when switching to C2 OSR compilation from C1
+  - JDK-8290529: C2: assert(BoolTest(btest).is_canonical()) failure
+  - JDK-8290705: StringConcat::validate_mem_flow asserts with "unexpected user: StoreI"
+  - JDK-8290711: assert(false) failed: infinite loop in PhaseIterGVN::optimize
+  - JDK-8290781: Segfault at PhaseIdealLoop::clone_loop_handle_data_uses
+  - JDK-8291459: JVM crash with GenerateOopMap::error_work(char const*, __va_list_tag*)
+  - JDK-8291461: assert(false) failed: bad AD file
+  - JDK-8292083: Detected container memory limit may exceed physical machine memory
+  - JDK-8292158: AES-CTR cipher state corruption with AVX-512
+  - JDK-8292541: [Metrics] Reported memory limit may exceed physical machine memory
+  - JDK-8292682: Code change of JDK-8282730 not updated to reflect CSR update
+  - JDK-8292778: EncodingSupport_md.c convertUtf8ToPlatformString wrong placing of free
+  - JDK-8292866: Java_sun_awt_shell_Win32ShellFolder2_getLinkLocation check MultiByteToWideChar return value for failures
+  - JDK-8292887: Bump update version for OpenJDK: jdk-11.0.18
+  - JDK-8292899: CustomTzIDCheckDST.java testcase failed on AIX platform
+  - JDK-8293044: C1: Missing access check on non-accessible class
+  - JDK-8293472: Incorrect container resource limit detection if manual cgroup fs mounts present
+  - JDK-8293540: [Metrics] Incorrectly detected resource limits with additional cgroup fs mounts
+  - JDK-8293578: Duplicate ldc generated by javac
+  - JDK-8293672: Update freetype md file
+  - JDK-8293816: CI: ciBytecodeStream::get_klass() is not consistent
+  - JDK-8293826: Closed test fails after JDK-8276108 on aarch64
+  - JDK-8293828: JFR: jfr/event/oldobject/TestClassLoaderLeak.java still fails when GC cycles are not happening
+  - JDK-8293834: Update CLDR data following tzdata 2022c update
+  - JDK-8293998: [PPC64] JfrGetCallTrace: assert(_pc != nullptr) failed: must have PC
+  - JDK-8294138: [11u] Revert change from JDK-8210962 in basic.m4
+  - JDK-8294307: ISO 4217 Amendment 173 Update
+  - JDK-8294357: (tz) Update Timezone Data to 2022d
+  - JDK-8294578: [PPC64] C2: Missing is_oop information when using disjoint compressed oops mode
+  - JDK-8294740: Add cgroups keyword to TestDockerBasic.java
+  - JDK-8295173: (tz) Update Timezone Data to 2022e
+  - JDK-8295288: Some vm_flags tests associate with a wrong BugID
+  - JDK-8295322: Tests for JDK-8271459 were not backported to 11u
+  - JDK-8295429: Update harfbuzz md file
+  - JDK-8295469: S390X: Optimized builds are broken
+  - JDK-8295554: Move the "sizecalc.h" to the correct location
+  - JDK-8295641: Fix DEFAULT_PROMOTED_VERSION_PRE=ea for -dev
+  - JDK-8295714: GHA ::set-output is deprecated and will be removed
+  - JDK-8295872: [PPC64] JfrGetCallTrace: Need pc == nullptr check before frame constructor
+  - JDK-8295952: Problemlist existing compiler/rtm tests also on x86
+  - JDK-8296108: (tz) Update Timezone Data to 2022f
+  - JDK-8296480: java/security/cert/pkix/policyChanges/TestPolicy.java is failing
+  - JDK-8296485: BuildEEBasicConstraints.java test fails with SunCertPathBuilderException
+  - JDK-8296496: Overzealous check in sizecalc.h prevents large memory allocation
+  - JDK-8296632: Write a test to verify the content change of TextArea sends TextEvent
+  - JDK-8296652: Restore windows aarch64 fixpath patch that was removed in 8239708
+  - JDK-8296715: CLDR v42 update for tzdata 2022f
+  - JDK-8296957: One more cast in SAFE_SIZE_NEW_ARRAY2
+  - JDK-8297147: UnexpectedSourceImageSize test times out on slow machines when fastdebug is used
+  - JDK-8297153: sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java fails again
+  - JDK-8297241: Update sun/java2d/DirectX/OnScreenRenderingResizeTest/OnScreenRenderingResizeTest.java
+  - JDK-8297481: Create a regression test for JDK-4424517
+  - JDK-8297656: AArch64: Enable AES/GCM Intrinsics
+  - JDK-8297804: (tz) Update Timezone Data to 2022g
+  - JDK-8298737: 8296772 backport to jdk11u caused build error on sparc
+
+Notes on individual issues:
+===========================
+
+security-libs/javax.crypto:
+
+JDK-6782021: Windows KeyStore Updated to Include Access to the Local Machine Location
+=====================================================================================
+The Windows KeyStore support in the SunMSCAPI provider has been
+expanded to include access to the local machine location. The new
+keystore types are:
+
+* "Windows-MY-LOCALMACHINE"
+* "Windows-ROOT-LOCALMACHINE"
+
+The following keystore types were also added, allowing developers to
+make it clear they map to the current user:
+
+* "Windows-MY-CURRENTUSER" (same as "Windows-MY")
+* "Windows-ROOT-CURRENTUSER" (same as "Windows-ROOT")
+
+security-libs/java.security:
+
+JDK-8282730: New Implementation Note for LoginModule on Removing Null from a Principals or Credentials Set
+==========================================================================================================
+Back in OpenJDK 9, JDK-8015081 changed the Set implementation used to
+hold principals and credentials so that it rejected null
+values. Attempts to call add(null), contains(null) or remove(null)
+were changed to throw a NullPointerException.
+
+However, the logout() methods in the LoginModule implementations
+within the JDK were not updated to check for null values, which may
+occur in the event of a failed login. As a result, a logout() call may
+throw a NullPointerException.
+
+The LoginModule implementations have now been updated with such checks
+and an implementation note added to the specification to suggest that
+the same change is made in third party modules.  Developers of third
+party modules are advised to verify that their logout() method does not
+throw a NullPointerException.
+
+New in release OpenJDK 11.0.17 (2022-10-18):
+=============================================
+Live versions of these release notes can be found at:
+  * https://bit.ly/openjdk11017
+  * https://builds.shipilev.net/backports-monitor/release-notes-11.0.17.html
+
+* Security fixes
+  - JDK-8282252: Improve BigInteger/Decimal validation
+  - JDK-8285662: Better permission resolution
+  - JDK-8286077, CVE-2022-21618: Wider MultiByte conversions
+  - JDK-8286511: Improve macro allocation
+  - JDK-8286519: Better memory handling
+  - JDK-8286526, CVE-2022-21619: Improve NTLM support
+  - JDK-8286533, CVE-2022-21626: Key X509 usages
+  - JDK-8286910, CVE-2022-21624: Improve JNDI lookups
+  - JDK-8286918, CVE-2022-21628: Better HttpServer service
+  - JDK-8287446: Enhance icon presentations
+  - JDK-8288508: Enhance ECDSA usage
+  - JDK-8289366, CVE-2022-39399: Improve HTTP/2 client usage
+  - JDK-8289853: Update HarfBuzz to 4.4.1
+  - JDK-8290334: Update FreeType to 2.12.1
+  - JDK-8293429: [11u] minor update in attribute style
+* Other changes
+  - JDK-6606767: resexhausted00[34] fail assert(!thread->owns_locks(), "must release all locks when leaving VM")
+  - JDK-6854300: [TEST_BUG] java/awt/event/MouseEvent/SpuriousExitEnter/SpuriousExitEnter_3.java fails in jdk6u14 & jdk7
+  - JDK-7131823: bug in GIFImageReader
+  - JDK-8017175: [TESTBUG] javax/swing/JPopupMenu/4634626/bug4634626.java sometimes failed on mac
+  - JDK-8028265: Add legacy tz tests to OpenJDK
+  - JDK-8069343: Improve gc/g1/TestHumongousCodeCacheRoots.java to use jtreg @requires
+  - JDK-8139348: Deprecate 3DES and RC4 in Kerberos
+  - JDK-8159694: HiDPI, Unity, java/awt/dnd/DropTargetEnterExitTest/MissedDragExitTest.java
+  - JDK-8164804: sun/security/ssl/SSLSocketImpl/CloseSocket.java makes not reliable time assumption
+  - JDK-8169468: NoResizeEventOnDMChangeTest.java fails because FS Window didn't receive all resizes!
+  - JDK-8172065: javax/swing/JTree/4908142/bug4908142.java The selected index should be "aad"
+  - JDK-8183372: Refactor java/lang/Class shell tests to java
+  - JDK-8186143: keytool -ext option doesn't accept wildcards for DNS subject alternative names
+  - JDK-8193462: Fix Filer handling of package-info initial elements
+  - JDK-8203277: preflow visitor used during lambda attribution shouldn't visit class definitions inside the lambda body
+  - JDK-8208471: nsk/jdb/unwatch/unwatch002/unwatch002.java fails with "Prompt is not received during 300200 milliseconds"
+  - JDK-8209052: Low contrast in docs/api/constant-values.html
+  - JDK-8209736: runtime/RedefineTests/ModifyAnonymous.java fails with NullPointerException when running in CDS mode
+  - JDK-8210107: vmTestbase/nsk/stress/network tests fail with Cannot assign requested address (Bind failed)
+  - JDK-8210722: JAXP Tests: CatalogSupport2 and CatalogSupport3 generate incorrect messages upon failure
+  - JDK-8210960: Allow --with-boot-jdk-jvmargs to work during configure
+  - JDK-8212904: JTextArea line wrapping incorrect when using UI scale
+  - JDK-8213695: gc/TestAllocateHeapAtMultiple.java is slow in some configs
+  - JDK-8214078: (fs) SecureDirectoryStream not supported on arm32
+  - JDK-8214427: probable bug in logic of ConcurrentHashMap.addCount()
+  - JDK-8215291: Broken links when generating from project without modules
+  - JDK-8217170: gc/arguments/TestUseCompressedOopsErgo.java timed out
+  - JDK-8217332: JTREG: Clean up, use generics instead of raw types
+  - JDK-8218128: vmTestbase/nsk/jvmti/ResourceExhausted/resexhausted003 and 004 use wrong path to test classes
+  - JDK-8218413: make reconfigure ignores configure-time AUTOCONF environment variable
+  - JDK-8219074: [TESTBUG] runtime/containers/docker/TestCPUAwareness.java typo of printing parameters (period should be shares)
+  - JDK-8219149: ProcessTools.ProcessBuilder should print timing info for subprocesses
+  - JDK-8220744: [TESTBUG] Move RedefineTests from runtime to serviceability
+  - JDK-8221871: javadoc should not set role=region on <section> elements
+  - JDK-8221907: make reconfigure breaks when configured with relative paths
+  - JDK-8223543: [TESTBUG] Regression test java/awt/Graphics2D/DrawString/LCDTextSrcEa.java has issues
+  - JDK-8223575: add subspace transitions to gc+metaspace=info log lines
+  - JDK-8225122: Test AncestorResized.java fails when Windows desktop is scaled.
+  - JDK-8226976: SessionTimeOutTests uses == operator for String value check
+  - JDK-8230708: Hotspot fails to build on linux-sparc with gcc-9
+  - JDK-8233712: Limit default tests jobs based on ulimit -u setting
+  - JDK-8235870: C2 crashes in IdealLoopTree::est_loop_flow_merge_sz()
+  - JDK-8236490: Compiler bug relating to @NonNull annotation
+  - JDK-8236823: Ensure that API documentation uses minified libraries
+  - JDK-8238196: tests that use SA Attach should not be allowed to run against signed binaries on Mac OS X 10.14.5 and later
+  - JDK-8238203: Return value of GetUserDefaultUILanguage() should be handled as LANGID
+  - JDK-8238268: Many SA tests are not running on OSX because they do not attempt to use sudo when available
+  - JDK-8238586: [TESTBUG] vmTestbase/jit/tiered/Test.java failed when TieredCompilation is disabled
+  - JDK-8239265: JFR: Test cleanup of jdk.jfr.api.consumer package
+  - JDK-8239379: ProblemList serviceability/sa/sadebugd/DebugdConnectTest.java on OSX
+  - JDK-8239423: jdk/jfr/jvm/TestJFRIntrinsic.java failed with -XX:-TieredCompilation
+  - JDK-8239902: [macos] Remove direct usage of JSlider, JProgressBar classes in CAccessible class
+  - JDK-8240903: Add test to check that jmod hashes are reproducible
+  - JDK-8242188: error in jtreg test jdk/jfr/api/consumer/TestRecordedFrame.java on linux-aarch64
+  - JDK-8247546: Pattern matching does not skip correctly over supplementary characters
+  - JDK-8247907: XMLDsig logging does not work
+  - JDK-8247964: All log0() in com/sun/org/slf4j/internal/Logger.java should be private
+  - JDK-8249623: test @ignore-d due to 7013634 should be returned back to execution
+  - JDK-8251152: ARM32: jtreg c2 Test8202414 test crash
+  - JDK-8251551: Use .md filename extension for README
+  - JDK-8252145: Unify Info.plist files with correct version strings
+  - JDK-8253829: Wrong length compared in SSPI bridge
+  - JDK-8253916: ResourceExhausted/resexhausted001 crashes on Linux-x64
+  - JDK-8254178: Remove .hgignore
+  - JDK-8254318: Remove .hgtags
+  - JDK-8255724: [XRender] the BlitRotateClippedArea test fails on Linux in the XR pipeline
+  - JDK-8255729: com.sun.tools.javac.processing.JavacFiler.FilerOutputStream  is inefficient
+  - JDK-8257623: vmTestbase/nsk/jvmti/ResourceExhausted/resexhausted001/TestDescription.java shouldn't use timeout
+  - JDK-8258946: Fix optimization-unstable code involving signed integer overflow
+  - JDK-8261160: Add a deserialization JFR event
+  - JDK-8262085: Hovering Metal HTML Tooltips in different windows cause IllegalArgExc on Linux
+  - JDK-8264400: (fs) WindowsFileStore equality depends on how the FileStore was constructed
+  - JDK-8264792: The NumberFormat for locale sq_XK formats price incorrectly.
+  - JDK-8265020: tests must be updated for new TestNG module name
+  - JDK-8265100: (fs) WindowsFileStore.hashCode() should read cached hash code once
+  - JDK-8265531: doc/building.md should mention homebrew install freetype
+  - JDK-8266250: WebSocketTest and WebSocketProxyTest call assertEquals(List<byte[]>, List<byte[]>)
+  - JDK-8266254: Update to use jtreg 6
+  - JDK-8266460: java.io tests fail on null stream with upgraded jtreg/TestNG
+  - JDK-8266461: tools/jmod/hashes/HashesTest.java fails: static @Test methods
+  - JDK-8266490: Extend the OSContainer API to support the pids controller of cgroups
+  - JDK-8266675: Optimize IntHashTable for encapsulation and ease of use
+  - JDK-8266774: System property values for stdout/err on Windows UTF-8
+  - JDK-8266881: Enable debug log for SSLEngineExplorerMatchedSNI.java
+  - JDK-8267180: Typo in copyright header  for HashesTest
+  - JDK-8267271: Fix gc/arguments/TestNewRatioFlag.java expectedNewSize calculation
+  - JDK-8267880: Upgrade the default PKCS12 MAC algorithm
+  - JDK-8268185: Update GitHub Actions for jtreg 6
+  - JDK-8269039: Disable SHA-1 Signed JARs
+  - JDK-8269517: compiler/loopopts/TestPartialPeelingSinkNodes.java crashes with -XX:+VerifyGraphEdges
+  - JDK-8270090: C2: LCM may prioritize CheckCastPP nodes over projections
+  - JDK-8270312: Error: Not a test or directory containing tests: java/awt/print/PrinterJob/XparColor.java
+  - JDK-8271010: vmTestbase/gc/lock/malloc/malloclock04/TestDescription.java crashes intermittently
+  - JDK-8271078: jdk/incubator/vector/Float128VectorTests.java failed a subtest
+  - JDK-8271512: ProblemList serviceability/sa/sadebugd/DebugdConnectTest.java due to 8270326
+  - JDK-8272352: Java launcher can not parse Chinese character when system locale is set to UTF-8
+  - JDK-8272398: Update DockerTestUtils.buildJdkDockerImage()
+  - JDK-8273526: Extend the OSContainer API  pids controller with pids.current
+  - JDK-8274506: TestPids.java and TestPidsLimit.java fail with podman run as root
+  - JDK-8274517: java/util/DoubleStreamSums/CompensatedSums.java fails with expected [true] but found [false]
+  - JDK-8274687: JDWP deadlocks if some Java thread reaches wait in blockOnDebuggerSuspend
+  - JDK-8275008: gtest build failure due to stringop-overflow warning with gcc11
+  - JDK-8275689: [TESTBUG] Use color tolerance only for XRender in BlitRotateClippedArea test
+  - JDK-8275887: jarsigner prints invalid digest/signature algorithm warnings if keysize is weak/disabled
+  - JDK-8277893: Arraycopy stress tests
+  - JDK-8278067: Make HttpURLConnection default keep alive timeout configurable
+  - JDK-8278344: sun/security/pkcs12/KeytoolOpensslInteropTest.java test fails because of different openssl output
+  - JDK-8278519: serviceability/jvmti/FieldAccessWatch/FieldAccessWatch.java failed "assert(handle != __null) failed: JNI handle should not be null"
+  - JDK-8279032: compiler/loopopts/TestSkeletonPredicateNegation.java times out with -XX:TieredStopAtLevel < 4
+  - JDK-8279385: [test]  Adjust sun/security/pkcs12/KeytoolOpensslInteropTest.java after 8278344
+  - JDK-8279622: C2: miscompilation of map pattern as a vector reduction
+  - JDK-8280913: Create a regression test for JRootPane.setDefaultButton() method
+  - JDK-8281181: Do not use CPU Shares to compute active processor count
+  - JDK-8281535: Create a regression test for JDK-4670051
+  - JDK-8281569: Create tests for Frame.setMinimumSize() method
+  - JDK-8281628: KeyAgreement : generateSecret intermittently not resetting
+  - JDK-8281738: Create a regression test for checking the 'Space' key activation of focused Button
+  - JDK-8281745: Create a regression test for JDK-4514331
+  - JDK-8281988: Create a regression test for JDK-4618767
+  - JDK-8282214: Upgrade JQuery to version 3.6.0
+  - JDK-8282234: Create a regression test for JDK-4532513
+  - JDK-8282280: Update Xerces to Version 2.12.2
+  - JDK-8282343: Create a regression test for JDK-4518432
+  - JDK-8282538: PKCS11 tests fail on CentOS Stream 9
+  - JDK-8282548: Create a regression test for JDK-4330998
+  - JDK-8282555: Missing memory edge when spilling MoveF2I, MoveD2L etc
+  - JDK-8282789: Create a regression test for the JTree usecase of JDK-4618767
+  - JDK-8282860: Write a regression test for JDK-4164779
+  - JDK-8282933: Create a test for JDK-4529616
+  - JDK-8282947: JFR: Dump on shutdown live-locks in some conditions
+  - JDK-8283015: Create a test for JDK-4715496
+  - JDK-8283017: GHA: Workflows break with update release versions
+  - JDK-8283087: Create a test or JDK-4715503
+  - JDK-8283245: Create a test for JDK-4670319
+  - JDK-8283277: ISO 4217 Amendment 171 Update
+  - JDK-8283441: C2: segmentation fault in ciMethodBlocks::make_block_at(int)
+  - JDK-8283493: Create an automated regression test for RFE 4231298
+  - JDK-8283507: Create a regression test for RFE 4287690
+  - JDK-8283621: Write a regression test for CCC4400728
+  - JDK-8283623: Create an automated regression test for JDK-4525475
+  - JDK-8283624: Create an automated regression test for RFE-4390885
+  - JDK-8283712: Create a manual test framework class
+  - JDK-8283803: Remove jtreg tag manual=yesno for java/awt/print/PrinterJob/PrintGlyphVectorTest.java and fix test
+  - JDK-8283849: AsyncGetCallTrace may crash JVM on guarantee
+  - JDK-8283903: GetContainerCpuLoad does not return the correct result in share mode
+  - JDK-8284077: Create an automated test for JDK-4170173
+  - JDK-8284367: JQuery UI upgrade from 1.12.1 to 1.13.1
+  - JDK-8284535: Fix PrintLatinCJKTest.java test that is failing with Parse Exception
+  - JDK-8284680: sun.font.FontConfigManager.getFontConfig() leaks charset
+  - JDK-8284694: Avoid evaluating SSLAlgorithmConstraints twice
+  - JDK-8284754: print more interesting env variables in hs_err and VM.info
+  - JDK-8284758: [linux] improve print_container_info
+  - JDK-8284882: SIGSEGV in Node::verify_edges due to compilation bailout
+  - JDK-8284898: Enhance PassFailJFrame
+  - JDK-8284944: assert(cnt++ < 40) failed: infinite cycle in loop optimization
+  - JDK-8284950: CgroupV1 detection code should consider memory.swappiness
+  - JDK-8284956: Potential leak awtImageData/color_data when initializes X11GraphicsEnvironment
+  - JDK-8285081: Improve XPath operators count accuracy
+  - JDK-8285097: Duplicate XML keys in XPATHErrorResources.java and XSLTErrorResources.java
+  - JDK-8285380: Fix typos in security
+  - JDK-8285398: Cache the results of constraint checks
+  - JDK-8285693: Create an automated test for JDK-4702199
+  - JDK-8285696: AlgorithmConstraints:permits not throwing IllegalArgumentException when 'alg'  is null
+  - JDK-8285728: Alpine Linux build fails with busybox tar
+  - JDK-8285820: C2: LCM prioritizes locally dependent CreateEx nodes over projections after 8270090
+  - JDK-8286114: [test] show real exception in bomb call in sun/rmi/runtime/Log/checkLogging/CheckLogging.java
+  - JDK-8286177: C2: "failed: non-reduction loop contains reduction nodes" assert failure
+  - JDK-8286211: Update PCSC-Lite for Suse Linux to 1.9.5
+  - JDK-8286314: Trampoline not created for far runtime targets outside small CodeCache
+  - JDK-8286582: Build fails on macos aarch64 when using --with-zlib=bundled
+  - JDK-8287017: Bump update version for OpenJDK: jdk-11.0.17
+  - JDK-8287073: NPE from CgroupV2Subsystem.getInstance()
+  - JDK-8287107: CgroupSubsystemFactory.setCgroupV2Path asserts with freezer controller
+  - JDK-8287202: GHA: Add macOS aarch64 to the list of default platforms for workflow_dispatch event
+  - JDK-8287223: C1: Inlining attempt through MH::invokeBasic() with null receiver
+  - JDK-8287336: GHA: Workflows break on patch versions
+  - JDK-8287366: Improve test failure reporting in GHA
+  - JDK-8287432: C2: assert(tn->in(0) != __null) failed: must have live top node
+  - JDK-8287463: JFR: Disable TestDevNull.java on Windows
+  - JDK-8287663: Add a regression test for JDK-8287073
+  - JDK-8287672: jtreg test com/sun/jndi/ldap/LdapPoolTimeoutTest.java fails intermittently in nightly run
+  - JDK-8287741: Fix of JDK-8287107 (unused cgv1 freezer controller) was incomplete
+  - JDK-8288360: CI: ciInstanceKlass::implementor() is not consistent for well-known classes
+  - JDK-8288467: remove memory_operand assert for spilled instructions
+  - JDK-8288754: GCC 12 fails to build zReferenceProcessor.cpp
+  - JDK-8288763: Pack200 extraction failure with invalid size
+  - JDK-8288781: C1: LIR_OpVisitState::maxNumberOfOperands too small
+  - JDK-8288865: [aarch64] LDR instructions must use legitimized addresses
+  - JDK-8288928: Incorrect GPL header in pnglibconf.h (backport of JDK-8185041)
+  - JDK-8289471: Issue in Initialization of keys in ErrorMsg.java and XPATHErrorResources.java
+  - JDK-8289477: Memory corruption with CPU_ALLOC, CPU_FREE on muslc
+  - JDK-8289486: Improve XSLT XPath operators count efficiency
+  - JDK-8289549: ISO 4217 Amendment 172 Update
+  - JDK-8289569: [test] java/lang/ProcessBuilder/Basic.java fails on Alpine/musl
+  - JDK-8289799: Build warning in methodData.cpp memset zero-length parameter
+  - JDK-8289856: [PPC64] SIGSEGV in C2Compiler::init_c2_runtime() after JDK-8289060
+  - JDK-8290000: Bump macOS GitHub actions to macOS 11
+  - JDK-8290004: [PPC64] JfrGetCallTrace: assert(_pc != nullptr) failed: must have PC
+  - JDK-8290198: Shenandoah: a few Shenandoah tests failure after JDK-8214799 11u backport
+  - JDK-8290246: test fails "assert(init != __null) failed: initialization not found"
+  - JDK-8290813: jdk/nashorn/api/scripting/test/ScriptObjectMirrorTest.java fails: assertEquals is ambiguous
+  - JDK-8290886: [11u]: Backport of JDK-8266250 introduced test failures
+  - JDK-8291570: [TESTBUG] Part of JDK-8250984 absent from 11u
+  - JDK-8291713: assert(!phase->exceeding_node_budget()) failed: sanity after JDK-8223389
+  - JDK-8291794: [11u] Corrections after backport of JDK-8212028
+  - JDK-8292579: (tz) Update Timezone Data to 2022c
+  - JDK-8292852: [11u] TestMemoryWithCgroupV1 fails after JDK-8292768
+  - JDK-8295057: [11u] Remove designator DEFAULT_PROMOTED_VERSION_PRE=ea for release 11.0.17
+
+Notes on individual issues:
+===========================
+
+core-libs/java.net:
+
+JDK-8278067: Make HttpURLConnection Default Keep Alive Timeout Configurable
+===========================================================================
+Two system properties have been added which control the keep alive
+behavior of HttpURLConnection in the case where the server does not
+specify a keep alive time. Two properties are defined for controlling
+connections to servers and proxies separately. They are:
+
+* `http.keepAlive.time.server`
+* `http.keepAlive.time.proxy`
+
+respectively. More information about them can be found on the
+Networking Properties page:
+https://docs.oracle.com/en/java/javase/19/docs/api/java.base/java/net/doc-files/net-properties.html.
+
+JDK-8286918: Better HttpServer service
+======================================
+The HttpServer can be optionally configured with a maximum connection
+limit by setting the jdk.httpserver.maxConnections system property. A
+value of 0 or a negative integer is ignored and considered to
+represent no connection limit. In the case of a positive integer
+value, any newly accepted connections will be first checked against
+the current count of established connections and, if the configured
+limit has been reached, then the newly accepted connection will be
+closed immediately.
+
+hotspot/runtime:
+
+JDK-8281181: CPU Shares Ignored When Computing Active Processor Count
+=====================================================================
+Previous JDK releases used an incorrect interpretation of the Linux
+cgroups parameter "cpu.shares". This might cause the JVM to use fewer
+CPUs than available, leading to an under utilization of CPU resources
+when the JVM is used inside a container.
+
+Starting from this JDK release, by default, the JVM no longer
+considers "cpu.shares" when deciding the number of threads to be used
+by the various thread pools. The `-XX:+UseContainerCpuShares`
+command-line option can be used to revert to the previous
+behavior. This option is deprecated and may be removed in a future JDK
+release.
+
+security-libs/java.security:
+
+JDK-8269039: Disabled SHA-1 Signed JARs
+=======================================
+JARs signed with SHA-1 algorithms are now restricted by default and
+treated as if they were unsigned. This applies to the algorithms used
+to digest, sign, and optionally timestamp the JAR. It also applies to
+the signature and digest algorithms of the certificates in the
+certificate chain of the code signer and the Timestamp Authority, and
+any CRLs or OCSP responses that are used to verify if those
+certificates have been revoked. These restrictions also apply to
+signed JCE providers.
+
+To reduce the compatibility risk for JARs that have been previously
+timestamped, there is one exception to this policy:
+
+- Any JAR signed with SHA-1 algorithms and timestamped prior to
+  January 01, 2019 will not be restricted.
+
+This exception may be removed in a future JDK release. To determine if
+your signed JARs are affected by this change, run:
+
+$ jarsigner -verify -verbose -certs`
+
+on the signed JAR, and look for instances of "SHA1" or "SHA-1" and
+"disabled" and a warning that the JAR will be treated as unsigned in
+the output.
+
+For example:
+
+   Signed by "CN="Signer""
+   Digest algorithm: SHA-1 (disabled)
+   Signature algorithm: SHA1withRSA (disabled), 2048-bit key
+
+   WARNING: The jar will be treated as unsigned, because it is signed with a weak algorithm that is now disabled by the security property:
+
+   jdk.jar.disabledAlgorithms=MD2, MD5, RSA keySize < 1024, DSA keySize < 1024, SHA1 denyAfter 2019-01-01
+
+JARs affected by these new restrictions should be replaced or
+re-signed with stronger algorithms.
+
+Users can, *at their own risk*, remove these restrictions by modifying
+the `java.security` configuration file (or override it by using the
+`java.security.properties` system property) and removing "SHA1 usage
+SignedJAR & denyAfter 2019-01-01" from the
+`jdk.certpath.disabledAlgorithms` security property and "SHA1
+denyAfter 2019-01-01" from the `jdk.jar.disabledAlgorithms` security
+property.
+
+JDK-8267880: Upgrade the default PKCS12 MAC algorithm
+=====================================================
+
+The default MAC algorithm used in a PKCS #12 keystore has been
+updated. The new algorithm is based on SHA-256 and is stronger than
+the old one based on SHA-1. See the security properties starting with
+`keystore.pkcs12` in the `java.security` file for detailed
+information.
+
+The new SHA-256 based MAC algorithms were introduced in the 11.0.12
+release. Keystores created using this newer, stronger, MAC algorithm
+cannot be opened in versions of OpenJDK 11 earlier than 11.0.12. A
+'java.security.NoSuchAlgorithmException' exception will be thrown in
+such circumstances.
+
+For compatibility, use the `keystore.pkcs12.legacy` system property,
+which will revert the algorithms to use the older, weaker
+algorithms. There is no value defined for this property.
+
+core-libs/java.io:serialization:
+
+JDK-8261160: JDK Flight Recorder Event for Deserialization
+==========================================================
+It is now possible to monitor deserialization of objects using JDK
+Flight Recorder (JFR). When JFR is enabled and the JFR configuration
+includes deserialization events, JFR will emit an event whenever the
+running program attempts to deserialize an object. The deserialization
+event is named `jdk.Deserialization`, and it is disabled by
+default. The deserialization event contains information that is used
+by the serialization filter mechanism; see the ObjectInputFilter API
+specification for details.
+
+Additionally, if a filter is enabled, the JFR event indicates whether
+the filter accepted or rejected deserialization of the object. For
+further information about how to use the JFR deserialization event,
+see the article "Monitoring Deserialization to Improve Application
+Security"
+(https://inside.java/2021/03/02/monitoring-deserialization-activity-in-the-jdk/).
+
+For reference information about using and configuring JFR, see the
+"JFR Runtime Guide"
+(https://docs.oracle.com/javacomponents/jmc-5-5/jfr-runtime-guide/preface_jfrrt.htm#JFRRT165)
+and "JFR Command Reference"
+(https://docs.oracle.com/javacomponents/jmc-5-5/jfr-command-reference/command-line-options.htm#JFRCR-GUID-FE61CA60-E1DF-460E-A8E0-F4FF5D58A7A0)
+sections of the JDK Mission Control documentation.
+
+security-libs/org.ietf.jgss:krb5:
+
+JDK-8139348: Deprecate 3DES and RC4 in Kerberos
+===============================================
+The `des3-hmac-sha1` and `rc4-hmac` Kerberos encryption types (etypes)
+are now deprecated and disabled by default. Users can set
+`allow_weak_crypto = true` in the `krb5.conf` configuration file to
+re-enable them (along with other weak etypes including `des-cbc-crc`
+and `des-cbc-md5`) at their own risk. To disable a subset of the weak
+etypes, users can list preferred etypes explicitly in any of the
+`default_tkt_enctypes`, `default_tgs_enctypes`, or
+`permitted_enctypes` settings.
+
+New in release OpenJDK 11.0.16.1 (2022-08-12):
+=============================================
+Live versions of these release notes can be found at:
+  * https://bit.ly/openjdk110161
+  * https://builds.shipilev.net/backports-monitor/release-notes-11.0.16.1.txt
+
+* Other changes
+  - JDK-8292255: Bump update version for OpenJDK: jdk-11.0.16.1
+  - JDK-8292260: [BACKOUT] JDK-8279219: [REDO] C2 crash when allocating array of size too large
+
+Notes on individual issues:
+===========================
+
+hotspot/compiler:
+
+JDK-8292396: C2 Compilation Errors Unpredictably Crashes JVM
+============================================================
+Fixes a regression in the C2 JIT compiler which caused the Java
+Runtime to crash unpredictably.
+
 New in release OpenJDK 11.0.16 (2022-07-19):
 =============================================
 Live versions of these release notes can be found at:
diff --git a/SOURCES/TestSecurityProperties.java b/SOURCES/TestSecurityProperties.java
index 552bd0f..2967a32 100644
--- a/SOURCES/TestSecurityProperties.java
+++ b/SOURCES/TestSecurityProperties.java
@@ -1,3 +1,20 @@
+/* TestSecurityProperties -- Ensure system security properties can be used to
+                             enable the crypto policies.
+   Copyright (C) 2022 Red Hat, Inc.
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU Affero General Public License as
+published by the Free Software Foundation, either version 3 of the
+License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU Affero General Public License for more details.
+
+You should have received a copy of the GNU Affero General Public License
+along with this program.  If not, see <http://www.gnu.org/licenses/>.
+*/
 import java.io.File;
 import java.io.FileInputStream;
 import java.security.Security;
diff --git a/SOURCES/TestTranslations.java b/SOURCES/TestTranslations.java
new file mode 100644
index 0000000..d87647a
--- /dev/null
+++ b/SOURCES/TestTranslations.java
@@ -0,0 +1,160 @@
+/* TestTranslations -- Ensure translations are available for new timezones
+   Copyright (C) 2022 Red Hat, Inc.
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU Affero General Public License as
+published by the Free Software Foundation, either version 3 of the
+License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU Affero General Public License for more details.
+
+You should have received a copy of the GNU Affero General Public License
+along with this program.  If not, see <http://www.gnu.org/licenses/>.
+*/
+
+import java.text.DateFormatSymbols;
+
+import java.time.ZoneId;
+import java.time.format.TextStyle;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Locale;
+import java.util.Objects;
+import java.util.TimeZone;
+
+public class TestTranslations {
+
+    private static Map<Locale,String[]> KYIV, CIUDAD_JUAREZ;
+
+    static {
+        Map<Locale,String[]> map = new HashMap<Locale,String[]>();
+        map.put(Locale.US, new String[] { "Eastern European Standard Time", "GMT+02:00", "EET",
+                                          "Eastern European Summer Time", "GMT+03:00", "EEST",
+                                          "Eastern European Time", "GMT+02:00", "EET"});
+        map.put(Locale.FRANCE, new String[] { "heure normale d\u2019Europe de l\u2019Est", "UTC+02:00", "EET",
+                                              "heure d\u2019\u00e9t\u00e9 d\u2019Europe de l\u2019Est", "UTC+03:00", "EEST",
+                                              "heure d\u2019Europe de l\u2019Est", "UTC+02:00", "EET"});
+        map.put(Locale.GERMANY, new String[] { "Osteurop\u00e4ische Normalzeit", "OEZ", "OEZ",
+                                               "Osteurop\u00e4ische Sommerzeit", "OESZ", "OESZ",
+                                               "Osteurop\u00e4ische Zeit", "OEZ", "OEZ"});
+        KYIV = Collections.unmodifiableMap(map);
+
+        map = new HashMap<Locale,String[]>();
+        map.put(Locale.US, new String[] { "Mountain Standard Time", "MST", "MST",
+                                          "Mountain Daylight Time", "MDT", "MDT",
+                                          "Mountain Time", "MT", "MT"});
+        map.put(Locale.FRANCE, new String[] { "heure normale des Rocheuses", "UTC\u221207:00", "MST",
+                                              "heure d\u2019\u00e9t\u00e9 des Rocheuses", "UTC\u221206:00", "MDT",
+                                              "heure des Rocheuses", "UTC\u221207:00", "MT"});
+        map.put(Locale.GERMANY, new String[] { "Rocky Mountain-Normalzeit", "GMT-07:00", "MST",
+                                               "Rocky-Mountain-Sommerzeit", "GMT-06:00", "MDT",
+                                               "Rocky-Mountain-Zeit", "GMT-07:00", "MT"});
+        CIUDAD_JUAREZ = Collections.unmodifiableMap(map);
+    }
+
+
+    public static void main(String[] args) {
+        if (args.length < 1) {
+            System.err.println("Test must be started with the name of the locale provider.");
+            System.exit(1);
+        }
+
+        System.out.println("Checking sanity of full zone string set...");
+        boolean invalid = Arrays.stream(Locale.getAvailableLocales())
+            .peek(l -> System.out.println("Locale: " + l))
+            .map(l -> DateFormatSymbols.getInstance(l).getZoneStrings())
+            .flatMap(zs -> Arrays.stream(zs))
+            .flatMap(names -> Arrays.stream(names))
+            .filter(name -> Objects.isNull(name) || name.isEmpty())
+            .findAny()
+            .isPresent();
+        if (invalid) {
+            System.err.println("Zone string for a locale returned null or empty string");
+            System.exit(2);
+        }
+
+        String localeProvider = args[0];
+        testZone(localeProvider, KYIV,
+                 new String[] { "Europe/Kiev", "Europe/Kyiv", "Europe/Uzhgorod", "Europe/Zaporozhye" });
+        testZone(localeProvider, CIUDAD_JUAREZ,
+                 new String[] { "America/Cambridge_Bay", "America/Ciudad_Juarez" });
+    }
+
+    private static void testZone(String localeProvider, Map<Locale,String[]> exp, String[] ids) {
+        for (Locale l : exp.keySet()) {
+            String[] expected = exp.get(l);
+            System.out.printf("Expected values for %s are %s\n", l, Arrays.toString(expected));
+            for (String id : ids) {
+                String expectedShortStd = null;
+                String expectedShortDST = null;
+                String expectedShortGen = null;
+
+                System.out.printf("Checking locale %s for %s...\n", l, id);
+
+                if ("JRE".equals(localeProvider)) {
+                    expectedShortStd = expected[2];
+                    expectedShortDST = expected[5];
+                    expectedShortGen = expected[8];
+                } else if ("CLDR".equals(localeProvider)) {
+                    expectedShortStd = expected[1];
+                    expectedShortDST = expected[4];
+                    expectedShortGen = expected[7];
+                } else {
+                    System.err.printf("Invalid locale provider %s\n", localeProvider);
+                    System.exit(3);
+                }
+                System.out.printf("Locale Provider is %s, using short values %s, %s and %s\n",
+                                  localeProvider, expectedShortStd, expectedShortDST, expectedShortGen);
+
+                String longStd = TimeZone.getTimeZone(id).getDisplayName(false, TimeZone.LONG, l);
+                String shortStd = TimeZone.getTimeZone(id).getDisplayName(false, TimeZone.SHORT, l);
+                String longDST = TimeZone.getTimeZone(id).getDisplayName(true, TimeZone.LONG, l);
+                String shortDST = TimeZone.getTimeZone(id).getDisplayName(true, TimeZone.SHORT, l);
+                String longGen = ZoneId.of(id).getDisplayName(TextStyle.FULL, l);
+                String shortGen = ZoneId.of(id).getDisplayName(TextStyle.SHORT, l);
+
+                if (!expected[0].equals(longStd)) {
+                    System.err.printf("Long standard display name for %s in %s was %s, expected %s\n",
+                                      id, l, longStd, expected[0]);
+                    System.exit(4);
+                }
+
+                if (!expectedShortStd.equals(shortStd)) {
+                    System.err.printf("Short standard display name for %s in %s was %s, expected %s\n",
+                                      id, l, shortStd, expectedShortStd);
+                    System.exit(5);
+                }
+
+                if (!expected[3].equals(longDST)) {
+                    System.err.printf("Long DST display name for %s in %s was %s, expected %s\n",
+                                      id, l, longDST, expected[3]);
+                    System.exit(6);
+                }
+
+                if (!expectedShortDST.equals(shortDST)) {
+                    System.err.printf("Short DST display name for %s in %s was %s, expected %s\n",
+                                      id, l, shortDST, expectedShortDST);
+                    System.exit(7);
+                }
+
+                if (!expected[6].equals(longGen)) {
+                    System.err.printf("Long generic display name for %s in %s was %s, expected %s\n",
+                                      id, l, longGen, expected[6]);
+                    System.exit(8);
+                }
+
+                if (!expectedShortGen.equals(shortGen)) {
+                    System.err.printf("Short generic display name for %s in %s was %s, expected %s\n",
+                                      id, l, shortGen, expectedShortGen);
+                    System.exit(9);
+                }
+            }
+        }
+    }
+}
diff --git a/SOURCES/jdk8275535-rh2053256-ldap_auth.patch b/SOURCES/jdk8275535-rh2053256-ldap_auth.patch
deleted file mode 100644
index 7a25e4b..0000000
--- a/SOURCES/jdk8275535-rh2053256-ldap_auth.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-diff --git openjdk.orig/src/java.naming/share/classes/com/sun/jndi/ldap/LdapCtxFactory.java openjdk/src/java.naming/share/classes/com/sun/jndi/ldap/LdapCtxFactory.java
-index 300f3682655..6f3eb6c450b 100644
---- openjdk.orig/src/java.naming/share/classes/com/sun/jndi/ldap/LdapCtxFactory.java
-+++ openjdk/src/java.naming/share/classes/com/sun/jndi/ldap/LdapCtxFactory.java
-@@ -226,6 +226,10 @@ final public class LdapCtxFactory implements ObjectFactory, InitialContextFactor
-                     ctx = getLdapCtxFromUrl(
-                             r.getDomainName(), url, new LdapURL(u), env);
-                     return ctx;
-+                } catch (AuthenticationException e) {
-+                    // do not retry on a different endpoint to avoid blocking
-+                    // the user if authentication credentials are wrong.
-+                    throw e;
-                 } catch (NamingException e) {
-                     // try the next element
-                     lastException = e;
-@@ -278,6 +282,10 @@ final public class LdapCtxFactory implements ObjectFactory, InitialContextFactor
-         for (String u : urls) {
-             try {
-                 return getUsingURL(u, env);
-+            } catch (AuthenticationException e) {
-+                // do not retry on a different URL to avoid blocking
-+                // the user if authentication credentials are wrong.
-+                throw e;
-             } catch (NamingException e) {
-                 ex = e;
-             }
diff --git a/SOURCES/remove-intree-libraries.sh b/SOURCES/remove-intree-libraries.sh
index d475909..ee02f60 100644
--- a/SOURCES/remove-intree-libraries.sh
+++ b/SOURCES/remove-intree-libraries.sh
@@ -5,6 +5,7 @@ TREE=${1}
 TYPE=${2}
 
 ZIP_SRC=src/java.base/share/native/libzip/zlib/
+FREETYPE_SRC=src/java.desktop/share/native/libfreetype/
 JPEG_SRC=src/java.desktop/share/native/libjavajpeg/
 GIF_SRC=src/java.desktop/share/native/libsplashscreen/giflib/
 PNG_SRC=src/java.desktop/share/native/libsplashscreen/libpng/
@@ -31,15 +32,21 @@ cd ${TREE}
 
 echo "Removing built-in libs (they will be linked)"
 
-# On full runs, allow for zlib having already been deleted by minimal
+# On full runs, allow for zlib & freetype having already been deleted by minimal
 echo "Removing zlib"
 if [ "x${TYPE}" = "xminimal" -a ! -d ${ZIP_SRC} ]; then
 	echo "${ZIP_SRC} does not exist. Refusing to proceed."
 	exit 1
 fi	
 rm -rvf ${ZIP_SRC}
+echo "Removing freetype"
+if [ "x${TYPE}" = "xminimal" -a ! -d ${FREETYPE_SRC} ]; then
+	echo "${FREETYPE_SRC} does not exist. Refusing to proceed."
+	exit 1
+fi
+rm -rvf ${FREETYPE_SRC}
 
-# Minimal is limited to just zlib so finish here
+# Minimal is limited to just zlib and freetype so finish here
 if test "x${TYPE}" = "xminimal"; then
     echo "Finished.";
     exit 0;
diff --git a/SPECS/java-11-openjdk.spec b/SPECS/java-11-openjdk.spec
index c6e4517..a55010c 100644
--- a/SPECS/java-11-openjdk.spec
+++ b/SPECS/java-11-openjdk.spec
@@ -25,6 +25,8 @@
 %bcond_with artifacts
 # Build a fresh libjvm.so for use in a copy of the bootstrap JDK
 %bcond_without fresh_libjvm
+# Build with system libraries
+%bcond_with system_libs
 
 # Workaround for stripping of debug symbols from static libraries
 %if %{with staticlibs}
@@ -41,6 +43,16 @@
 %global build_hotspot_first 0
 %endif
 
+%if %{with system_libs}
+%global system_libs 1
+%global link_type system
+%global freetype_lib %{nil}
+%else
+%global system_libs 0
+%global link_type bundled
+%global freetype_lib |libfreetype[.]so.*
+%endif
+
 # The -g flag says to use strip -g instead of full strip on DSOs or EXEs.
 # This fixes detailed NMT and other tools which need minimal debug info.
 # See: https://bugzilla.redhat.com/show_bug.cgi?id=1520879
@@ -319,7 +331,7 @@
 # New Version-String scheme-style defines
 %global featurever 11
 %global interimver 0
-%global updatever 16
+%global updatever 18
 %global patchver 0
 # buildjdkver is usually same as %%{featurever},
 # but in time of bootstrap of next jdk, it is featurever-1,
@@ -365,8 +377,8 @@
 %global origin_nice     OpenJDK
 %global top_level_dir_name   %{origin}
 %global top_level_dir_name_backup %{top_level_dir_name}-backup
-%global buildver        8
-%global rpmrelease      2
+%global buildver        9
+%global rpmrelease      3
 #%%global tagsuffix     %%{nil}
 # Priority must be 8 digits in total; up to openjdk 1.8, we were using 18..... so when we moved to 11, we had to add another digit
 %if %is_system_jdk
@@ -394,7 +406,7 @@
 # Release will be (where N is usually a number starting at 1):
 # - 0.N%%{?extraver}%%{?dist} for EA releases,
 # - N%%{?extraver}{?dist} for GA releases
-%global is_ga           1
+%global is_ga           0
 %if %{is_ga}
 %global ea_designator ""
 %global ea_designator_zip ""
@@ -425,7 +437,7 @@
 # fix for https://bugzilla.redhat.com/show_bug.cgi?id=1111349
 #         https://bugzilla.redhat.com/show_bug.cgi?id=1590796#c14
 #         https://bugzilla.redhat.com/show_bug.cgi?id=1655938
-%global _privatelibs libsplashscreen[.]so.*|libawt_xawt[.]so.*|libjli[.]so.*|libattach[.]so.*|libawt[.]so.*|libextnet[.]so.*|libawt_headless[.]so.*|libdt_socket[.]so.*|libfontmanager[.]so.*|libinstrument[.]so.*|libj2gss[.]so.*|libj2pcsc[.]so.*|libj2pkcs11[.]so.*|libjaas[.]so.*|libjavajpeg[.]so.*|libjdwp[.]so.*|libjimage[.]so.*|libjsound[.]so.*|liblcms[.]so.*|libmanagement[.]so.*|libmanagement_agent[.]so.*|libmanagement_ext[.]so.*|libmlib_image[.]so.*|libnet[.]so.*|libnio[.]so.*|libprefs[.]so.*|librmi[.]so.*|libsaproc[.]so.*|libsctp[.]so.*|libsunec[.]so.*|libsystemconf[.]so.*|libunpack[.]so.*|libzip[.]so.*
+%global _privatelibs libsplashscreen[.]so.*|libawt_xawt[.]so.*|libjli[.]so.*|libattach[.]so.*|libawt[.]so.*|libextnet[.]so.*|libawt_headless[.]so.*|libdt_socket[.]so.*|libfontmanager[.]so.*|libinstrument[.]so.*|libj2gss[.]so.*|libj2pcsc[.]so.*|libj2pkcs11[.]so.*|libjaas[.]so.*|libjavajpeg[.]so.*|libjdwp[.]so.*|libjimage[.]so.*|libjsound[.]so.*|liblcms[.]so.*|libmanagement[.]so.*|libmanagement_agent[.]so.*|libmanagement_ext[.]so.*|libmlib_image[.]so.*|libnet[.]so.*|libnio[.]so.*|libprefs[.]so.*|librmi[.]so.*|libsaproc[.]so.*|libsctp[.]so.*|libsunec[.]so.*|libsystemconf[.]so.*|libunpack[.]so.*|libzip[.]so.*%{freetype_lib}
 %global _publiclibs libjawt[.]so.*|libjava[.]so.*|libjvm[.]so.*|libverify[.]so.*|libjsig[.]so.*
 %if %is_system_jdk
 %global __provides_exclude ^(%{_privatelibs})$
@@ -849,6 +861,9 @@ exit 0
 %{_jvmdir}/%{sdkdir -- %{?1}}/lib/libawt_headless.so
 %{_jvmdir}/%{sdkdir -- %{?1}}/lib/libdt_socket.so
 %{_jvmdir}/%{sdkdir -- %{?1}}/lib/libfontmanager.so
+%if ! %{system_libs}
+%{_jvmdir}/%{sdkdir -- %{?1}}/lib/libfreetype.so
+%endif
 %{_jvmdir}/%{sdkdir -- %{?1}}/lib/libinstrument.so
 %{_jvmdir}/%{sdkdir -- %{?1}}/lib/libj2gss.so
 %{_jvmdir}/%{sdkdir -- %{?1}}/lib/libj2pcsc.so
@@ -1128,9 +1143,8 @@ Provides: jre%{?1} = %{epoch}:%{version}-%{release}
 Requires: ca-certificates
 # Require javapackages-filesystem for ownership of /usr/lib/jvm/ and macros
 Requires: javapackages-filesystem
-# Require zone-info data provided by tzdata-java sub-package
-# 2022a required as of JDK-8283350 in 11.0.16
-Requires: tzdata-java >= 2022a
+# 2022g required as of JDK-8297804
+Requires: tzdata-java >= 2022g
 # for support of kernel stream control
 # libsctp.so.1 is being `dlopen`ed on demand
 Requires: lksctp-tools%{?_isa}
@@ -1324,6 +1338,9 @@ Source16: CheckVendor.java
 # nss fips configuration file
 Source17: nss.fips.cfg.in
 
+# Ensure translations are available for new timezones
+Source18: TestTranslations.java
+
 ############################################
 #
 # RPM/distribution specific patches
@@ -1382,8 +1399,6 @@ Patch1001: fips-11u-%{fipsver}.patch
 #############################################
 
 Patch3:    rh649512-remove_uses_of_far_in_jpeg_libjpeg_turbo_1_4_compat_for_jdk10_and_up.patch
-# JDK-8275535, RH2053256: Retrying a failed authentication on multiple LDAP servers can lead to users blocked
-Patch8: jdk8275535-rh2053256-ldap_auth.patch
 
 #############################################
 #
@@ -1397,7 +1412,7 @@ Patch8: jdk8275535-rh2053256-ldap_auth.patch
 
 #############################################
 #
-# Patches appearing in 11.0.15
+# Patches appearing in 11.0.18
 #
 # This section includes patches which are present
 # in the listed OpenJDK 11u release and should be
@@ -1414,14 +1429,8 @@ BuildRequires: desktop-file-utils
 # elfutils only are OK for build without AOT
 BuildRequires: elfutils-devel
 BuildRequires: fontconfig-devel
-BuildRequires: freetype-devel
-BuildRequires: giflib-devel
 BuildRequires: gcc-c++
 BuildRequires: gdb
-BuildRequires: harfbuzz-devel
-BuildRequires: lcms2-devel
-BuildRequires: libjpeg-devel
-BuildRequires: libpng-devel
 BuildRequires: libxslt
 BuildRequires: libX11-devel
 BuildRequires: libXi-devel
@@ -1444,8 +1453,8 @@ BuildRequires: java-%{buildjdkver}-openjdk-devel
 %ifarch %{zero_arches}
 BuildRequires: libffi-devel
 %endif
-# 2022a required as of JDK-8283350 in 11.0.16
-BuildRequires: tzdata-java >= 2022a
+# 2022g required as of JDK-8297804
+BuildRequires: tzdata-java >= 2022g
 # Earlier versions have a bug in tree vectorization on PPC
 BuildRequires: gcc >= 4.8.3-8
 
@@ -1454,6 +1463,30 @@ BuildRequires: systemtap-sdt-devel
 %endif
 BuildRequires: make
 
+%if %{system_libs}
+BuildRequires: freetype-devel
+BuildRequires: giflib-devel
+BuildRequires: harfbuzz-devel
+BuildRequires: lcms2-devel
+BuildRequires: libjpeg-devel
+BuildRequires: libpng-devel
+%else
+# Version in src/java.desktop/share/native/libfreetype/include/freetype/freetype.h
+Provides: bundled(freetype) = 2.12.1
+# Version in src/java.desktop/share/native/libsplashscreen/giflib/gif_lib.h
+Provides: bundled(giflib) = 5.2.1
+# Version in src/java.desktop/share/native/libharfbuzz/hb-version.h
+Provides: bundled(harfbuzz) = 4.4.1
+# Version in src/java.desktop/share/native/liblcms/lcms2.h
+Provides: bundled(lcms2) = 2.12.0
+# Version in src/java.desktop/share/native/libjavajpeg/jpeglib.h
+Provides: bundled(libjpeg) = 6b
+# Version in src/java.desktop/share/native/libsplashscreen/libpng/png.h
+Provides: bundled(libpng) = 1.6.37
+# We link statically against libstdc++ to increase portability
+BuildRequires: libstdc++-static
+%endif
+
 # this is always built, also during debug-only build
 # when it is built in debug-only this package is just placeholder
 %{java_rpo %{nil}}
@@ -1789,8 +1822,11 @@ if [ $prioritylength -ne 8 ] ; then
 fi
 
 # OpenJDK patches
+
+%if %{system_libs}
 # Remove libraries that are linked by both static and dynamic builds
 sh %{SOURCE12} %{top_level_dir_name}
+%endif
 
 # Patch the JDK
 pushd %{top_level_dir_name}
@@ -1806,8 +1842,6 @@ popd # openjdk
 %patch600
 %patch1003
 
-%patch8
-
 # Extract systemtap tapsets
 %if %{with_systemtap}
 tar --strip-components=1 -x -I xz -f %{SOURCE8}
@@ -1904,6 +1938,14 @@ function buildjdk() {
     local top_dir_abs_src_path=$(pwd)/%{top_level_dir_name}
     local top_dir_abs_build_path=$(pwd)/${outputdir}
 
+    # This must be set using the global, so that the
+    # static libraries still use a dynamic stdc++lib
+    if [ "x%{link_type}" = "xbundled" ] ; then
+        libc_link_opt="static";
+    else
+        libc_link_opt="dynamic";
+    fi
+
     echo "Using output directory: ${outputdir}";
     echo "Checking build JDK ${buildjdk} is operational..."
     ${buildjdk}/bin/java -version
@@ -1915,6 +1957,10 @@ function buildjdk() {
     mkdir -p ${outputdir}
     pushd ${outputdir}
 
+    # Note: zlib and freetype use %{link_type}
+    # rather than ${link_opt} as the system versions
+    # are always used in a system_libs build, even
+    # for the static library build
     bash ${top_dir_abs_src_path}/configure \
 %ifarch %{zero_arches}
     --with-jvm-variants=zero \
@@ -1935,13 +1981,14 @@ function buildjdk() {
     --with-native-debug-symbols="%{debug_symbols}" \
     --disable-sysconf-nss \
     --enable-unlimited-crypto \
-    --with-zlib=system \
+    --with-zlib=%{link_type} \
+    --with-freetype=%{link_type} \
     --with-libjpeg=${link_opt} \
     --with-giflib=${link_opt} \
     --with-libpng=${link_opt} \
     --with-lcms=${link_opt} \
     --with-harfbuzz=${link_opt} \
-    --with-stdc++lib=dynamic \
+    --with-stdc++lib=${libc_link_opt} \
     --with-extra-cxxflags="$EXTRA_CPP_FLAGS" \
     --with-extra-cflags="$EXTRA_CFLAGS" \
     --with-extra-asflags="$EXTRA_ASFLAGS" \
@@ -2052,12 +2099,13 @@ for suffix in %{build_loop} ; do
     bootinstalldir=boot${installdir}
 
     if test "x${loop}" = "x%{main_suffix}" ; then
+      link_opt="%{link_type}"
+%if %{system_libs}
       # Copy the source tree so we can remove all in-tree libraries
       cp -a %{top_level_dir_name} %{top_level_dir_name_backup}
       # Remove all libraries that are linked
       sh %{SOURCE12} %{top_level_dir_name} full
-      # Use system libraries
-      link_opt="system"
+%endif
       # Debug builds don't need same targets as release for
       # build speed-up. We also avoid bootstrapping these
       # slower builds.
@@ -2078,9 +2126,11 @@ for suffix in %{build_loop} ; do
           buildjdk ${builddir} ${systemjdk} "${maketargets}" ${debugbuild} ${link_opt}
           installjdk ${builddir} ${installdir}
       fi
+%if %{system_libs}
       # Restore original source tree we modified by removing full in-tree sources
       rm -rf %{top_level_dir_name}
       mv %{top_level_dir_name_backup} %{top_level_dir_name}
+%endif
     else
       # Use bundled libraries for building statically
       link_opt="bundled"
@@ -2144,6 +2194,11 @@ nm $JAVA_HOME/bin/%{alt_java_name} | grep set_speculation
 if ! nm $JAVA_HOME/bin/%{alt_java_name} | grep set_speculation ; then true ; else false; fi
 %endif
 
+# Check translations are available for new timezones
+$JAVA_HOME/bin/javac -d . %{SOURCE18}
+$JAVA_HOME/bin/java $(echo $(basename %{SOURCE18})|sed "s|\.java||") JRE
+$JAVA_HOME/bin/java -Djava.locale.providers=CLDR $(echo $(basename %{SOURCE18})|sed "s|\.java||") CLDR
+
 %if %{include_staticlibs}
 # Check debug symbols in static libraries (smoke test)
 export STATIC_LIBS_HOME=${top_dir_abs_staticlibs_build_path}/images/%{static_libs_image}
@@ -2621,6 +2676,58 @@ end
 %endif
 
 %changelog
+* Tue Jan 03 2023 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.18.0.9-0.3.ea
+- Update to jdk-11.0.18+9
+- Update release notes to 11.0.18+9
+- Drop local copy of JDK-8293834 now this is upstream
+- Require tzdata 2022g due to inclusion of JDK-8296108, JDK-8296715 & JDK-8297804
+- Update TestTranslations.java to test the new America/Ciudad_Juarez zone
+- Resolves: rhbz#2150194
+
+* Thu Dec 15 2022 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.18.0.1-0.3.ea
+- Update to jdk-11.0.18+1
+- Update release notes to 11.0.18+1
+- Switch to EA mode for 11.0.18 pre-release builds.
+- Drop local copies of JDK-8294357 & JDK-8295173 now upstream contains tzdata 2022e
+- Drop local copy of JDK-8275535 which is finally upstream
+- Related: rhbz#2150194
+
+* Wed Oct 26 2022 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.17.0.8-2
+- Update to jdk-11.0.17+8 (GA)
+- Update release notes to 11.0.17+8
+- Switch to GA mode for release
+- Update in-tree tzdata to 2022e with JDK-8294357 & JDK-8295173
+- Update CLDR data with Europe/Kyiv (JDK-8293834)
+- Drop JDK-8292223 patch which we found to be unnecessary
+- Update TestTranslations.java to use public API based on TimeZoneNamesTest upstream
+- The stdc++lib, zlib & freetype options should always be set from the global, so they are not altered for staticlibs builds
+- Remove freetype sources along with zlib sources
+- Resolves: rhbz#2133695
+
+* Wed Oct 05 2022 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.17.0.7-0.2.ea
+- Update to jdk-11.0.17+7
+- Update release notes to 11.0.17+7
+- Resolves: rhbz#2130374
+
+* Tue Sep 06 2022 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.17.0.1-0.2.ea
+- Update to jdk-11.0.17+1
+- Update release notes to 11.0.17+1
+- Switch to EA mode for 11.0.17 pre-release builds.
+- Bump HarfBuzz bundled version to 4.4.1 following JDK-8289853
+- Bump FreeType bundled version to 2.12.1 following JDK-8290334
+- Related: rhbz#2130374
+
+* Tue Aug 30 2022 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.16.1.1-3
+- Switch to static builds, reducing system dependencies and making build more portable
+- Resolves: rhbz#2121266
+
+* Wed Aug 24 2022 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.16.1.1-2
+- Update to jdk-11.0.16.1+1
+- Update release notes to 11.0.16.1+1
+- Add patch to provide translations for Europe/Kyiv added in tzdata2022b
+- Add test to ensure timezones can be translated
+- Resolves: rhbz#2119527
+
 * Fri Jul 22 2022 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.16.0.8-2
 - Update to jdk-11.0.16+8
 - Update release notes to 11.0.16+8