diff --git a/.gitignore b/.gitignore
index 427e7a3..b40dc7b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,2 @@
-SOURCES/openjdk-jdk11u-jdk-11.0.16.1+1-4curve.tar.xz
+SOURCES/openjdk-jdk11u-jdk-11.0.17+8-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 c3fea9a..31cfec6 100644
--- a/.java-11-openjdk.metadata
+++ b/.java-11-openjdk.metadata
@@ -1,2 +1,2 @@
-2a38767be240c8c0299e08a242c01fd63445ba8c SOURCES/openjdk-jdk11u-jdk-11.0.16.1+1-4curve.tar.xz
+a4515a4c921b883e63289f530414addcd12428eb SOURCES/openjdk-jdk11u-jdk-11.0.17+8-4curve.tar.xz
 c8281ee37b77d535c9c1af86609a531958ff7b34 SOURCES/tapsets-icedtea-6.0.0pre00-c848b93a8598.tar.xz
diff --git a/SOURCES/NEWS b/SOURCES/NEWS
index 9f63831..fb93c94 100644
--- a/SOURCES/NEWS
+++ b/SOURCES/NEWS
@@ -3,6 +3,392 @@ 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.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:
diff --git a/SOURCES/TestTranslations.java b/SOURCES/TestTranslations.java
index cf83303..dbea417 100644
--- a/SOURCES/TestTranslations.java
+++ b/SOURCES/TestTranslations.java
@@ -15,20 +15,125 @@ 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.ResourceBundle;
-
-import sun.util.resources.LocaleData;
-import sun.util.locale.provider.LocaleProviderAdapter;
+import java.util.Objects;
+import java.util.TimeZone;
 
 public class TestTranslations {
+
+    private static Map<Locale,String[]> KYIV;
+
+    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);
+    }
+
+
     public static void main(String[] args) {
-        for (String zone : args) {
-            System.out.printf("Translations for %s\n", zone);
-            for (Locale l : Locale.getAvailableLocales()) {
-                ResourceBundle bundle = new LocaleData(LocaleProviderAdapter.Type.JRE).getTimeZoneNames(l);
-                System.out.printf("Locale: %s, language: %s, translations: %s\n", l, l.getDisplayLanguage(), Arrays.toString(bundle.getStringArray(zone)));
+        if (args.length < 1) {
+            System.err.println("Test must be started with the name of the locale provider.");
+            System.exit(1);
+        }
+
+        String localeProvider = args[0];
+        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);
+        }
+
+        for (Locale l : KYIV.keySet()) {
+            String[] expected = KYIV.get(l);
+            for (String id : new String[] { "Europe/Kiev", "Europe/Kyiv", "Europe/Uzhgorod", "Europe/Zaporozhye" }) {
+                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 standard 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/jdk8292223-tzdata2022b-kyiv.patch b/SOURCES/jdk8292223-tzdata2022b-kyiv.patch
deleted file mode 100644
index 1107b82..0000000
--- a/SOURCES/jdk8292223-tzdata2022b-kyiv.patch
+++ /dev/null
@@ -1,132 +0,0 @@
-diff --git a/src/java.base/share/classes/sun/util/resources/TimeZoneNames.java b/src/java.base/share/classes/sun/util/resources/TimeZoneNames.java
-index 8759aab3995..11ccbf73839 100644
---- a/src/java.base/share/classes/sun/util/resources/TimeZoneNames.java
-+++ b/src/java.base/share/classes/sun/util/resources/TimeZoneNames.java
-@@ -847,6 +847,7 @@ public final class TimeZoneNames extends TimeZoneNamesBundle {
-             {"Europe/Kirov", new String[] {"Kirov Standard Time", "GMT+03:00",
-                                            "Kirov Daylight Time", "GMT+03:00",
-                                            "Kirov Time", "GMT+03:00"}},
-+            {"Europe/Kyiv", EET},
-             {"Europe/Lisbon", WET},
-             {"Europe/Ljubljana", CET},
-             {"Europe/London", GMTBST},
-diff --git a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_de.java b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_de.java
-index f007c1a8d3b..617268e4cf3 100644
---- a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_de.java
-+++ b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_de.java
-@@ -825,6 +825,7 @@ public final class TimeZoneNames_de extends TimeZoneNamesBundle {
-             {"Europe/Jersey", GMTBST},
-             {"Europe/Kaliningrad", EET},
-             {"Europe/Kiev", EET},
-+            {"Europe/Kyiv", EET},
-             {"Europe/Lisbon", WET},
-             {"Europe/Ljubljana", CET},
-             {"Europe/London", GMTBST},
-diff --git a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_es.java b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_es.java
-index 386414e16e6..14c5d89b9c5 100644
---- a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_es.java
-+++ b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_es.java
-@@ -825,6 +825,7 @@ public final class TimeZoneNames_es extends TimeZoneNamesBundle {
-             {"Europe/Jersey", GMTBST},
-             {"Europe/Kaliningrad", EET},
-             {"Europe/Kiev", EET},
-+            {"Europe/Kyiv", EET},
-             {"Europe/Lisbon", WET},
-             {"Europe/Ljubljana", CET},
-             {"Europe/London", GMTBST},
-diff --git a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_fr.java b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_fr.java
-index d23f5fd49e6..44117125619 100644
---- a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_fr.java
-+++ b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_fr.java
-@@ -825,6 +825,7 @@ public final class TimeZoneNames_fr extends TimeZoneNamesBundle {
-             {"Europe/Jersey", GMTBST},
-             {"Europe/Kaliningrad", EET},
-             {"Europe/Kiev", EET},
-+            {"Europe/Kyiv", EET},
-             {"Europe/Lisbon", WET},
-             {"Europe/Ljubljana", CET},
-             {"Europe/London", GMTBST},
-diff --git a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_it.java b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_it.java
-index b4f57d4568c..efa818f3865 100644
---- a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_it.java
-+++ b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_it.java
-@@ -825,6 +825,7 @@ public final class TimeZoneNames_it extends TimeZoneNamesBundle {
-             {"Europe/Jersey", GMTBST},
-             {"Europe/Kaliningrad", EET},
-             {"Europe/Kiev", EET},
-+            {"Europe/Kyiv", EET},
-             {"Europe/Lisbon", WET},
-             {"Europe/Ljubljana", CET},
-             {"Europe/London", GMTBST},
-diff --git a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_ja.java b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_ja.java
-index 1a10a9f96dc..7c0565461ad 100644
---- a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_ja.java
-+++ b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_ja.java
-@@ -825,6 +825,7 @@ public final class TimeZoneNames_ja extends TimeZoneNamesBundle {
-             {"Europe/Jersey", GMTBST},
-             {"Europe/Kaliningrad", EET},
-             {"Europe/Kiev", EET},
-+            {"Europe/Kyiv", EET},
-             {"Europe/Lisbon", WET},
-             {"Europe/Ljubljana", CET},
-             {"Europe/London", GMTBST},
-diff --git a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_ko.java b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_ko.java
-index 9a2d9e5c57c..8a2c805997f 100644
---- a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_ko.java
-+++ b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_ko.java
-@@ -825,6 +825,7 @@ public final class TimeZoneNames_ko extends TimeZoneNamesBundle {
-             {"Europe/Jersey", GMTBST},
-             {"Europe/Kaliningrad", EET},
-             {"Europe/Kiev", EET},
-+            {"Europe/Kyiv", EET},
-             {"Europe/Lisbon", WET},
-             {"Europe/Ljubljana", CET},
-             {"Europe/London", GMTBST},
-diff --git a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_pt_BR.java b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_pt_BR.java
-index de5e5c82daa..e3c06417f09 100644
---- a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_pt_BR.java
-+++ b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_pt_BR.java
-@@ -825,6 +825,7 @@ public final class TimeZoneNames_pt_BR extends TimeZoneNamesBundle {
-             {"Europe/Jersey", GMTBST},
-             {"Europe/Kaliningrad", EET},
-             {"Europe/Kiev", EET},
-+            {"Europe/Kyiv", EET},
-             {"Europe/Lisbon", WET},
-             {"Europe/Ljubljana", CET},
-             {"Europe/London", GMTBST},
-diff --git a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_sv.java b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_sv.java
-index b53de4d8c89..3e46b6a063e 100644
---- a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_sv.java
-+++ b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_sv.java
-@@ -825,6 +825,7 @@ public final class TimeZoneNames_sv extends TimeZoneNamesBundle {
-             {"Europe/Jersey", GMTBST},
-             {"Europe/Kaliningrad", EET},
-             {"Europe/Kiev", EET},
-+            {"Europe/Kyiv", EET},
-             {"Europe/Lisbon", WET},
-             {"Europe/Ljubljana", CET},
-             {"Europe/London", GMTBST},
-diff --git a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_zh_CN.java b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_zh_CN.java
-index 7797cda19d5..590908409a8 100644
---- a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_zh_CN.java
-+++ b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_zh_CN.java
-@@ -825,6 +825,7 @@ public final class TimeZoneNames_zh_CN extends TimeZoneNamesBundle {
-             {"Europe/Jersey", GMTBST},
-             {"Europe/Kaliningrad", EET},
-             {"Europe/Kiev", EET},
-+            {"Europe/Kyiv", EET},
-             {"Europe/Lisbon", WET},
-             {"Europe/Ljubljana", CET},
-             {"Europe/London", GMTBST},
-diff --git a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_zh_TW.java b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_zh_TW.java
-index 2cd10554853..23c5f180b6d 100644
---- a/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_zh_TW.java
-+++ b/src/jdk.localedata/share/classes/sun/util/resources/ext/TimeZoneNames_zh_TW.java
-@@ -827,6 +827,7 @@ public final class TimeZoneNames_zh_TW extends TimeZoneNamesBundle {
-             {"Europe/Jersey", GMTBST},
-             {"Europe/Kaliningrad", EET},
-             {"Europe/Kiev", EET},
-+            {"Europe/Kyiv", EET},
-             {"Europe/Lisbon", WET},
-             {"Europe/Ljubljana", CET},
-             {"Europe/London", GMTBST},
diff --git a/SOURCES/jdk8293834-kyiv_cldr_update.patch b/SOURCES/jdk8293834-kyiv_cldr_update.patch
new file mode 100644
index 0000000..45d14c9
--- /dev/null
+++ b/SOURCES/jdk8293834-kyiv_cldr_update.patch
@@ -0,0 +1,57 @@
+commit 58ba3b61d276423cef1e1f52bd73c9706cc073fc
+Author: Andrew Hughes <gnu.andrew@redhat.com>
+Date:   Sat Oct 15 05:37:36 2022 +0100
+
+    Backport e10231248fc100f9dfa08468ac897f60b843857f
+
+diff --git a/src/jdk.localedata/share/classes/sun/util/cldr/resources/common/bcp47/timezone.xml b/src/jdk.localedata/share/classes/sun/util/cldr/resources/common/bcp47/timezone.xml
+index 35f8fc86efa..a9b635b4fa4 100644
+--- a/src/jdk.localedata/share/classes/sun/util/cldr/resources/common/bcp47/timezone.xml
++++ b/src/jdk.localedata/share/classes/sun/util/cldr/resources/common/bcp47/timezone.xml
+@@ -392,7 +392,7 @@ For terms of use, see http://www.unicode.org/copyright.html
+             <type name="tvfun" description="Funafuti, Tuvalu" alias="Pacific/Funafuti"/>
+             <type name="twtpe" description="Taipei, Taiwan" alias="Asia/Taipei ROC"/>
+             <type name="tzdar" description="Dar es Salaam, Tanzania" alias="Africa/Dar_es_Salaam"/>
+-            <type name="uaiev" description="Kiev, Ukraine" alias="Europe/Kiev"/>
++            <type name="uaiev" description="Kyiv, Ukraine" alias="Europe/Kiev Europe/Kyiv"/>
+             <type name="uaozh" description="Zaporizhia (Zaporozhye), Ukraine" alias="Europe/Zaporozhye"/>
+             <type name="uasip" description="Simferopol, Ukraine" alias="Europe/Simferopol"/>
+             <type name="uauzh" description="Uzhhorod (Uzhgorod), Ukraine" alias="Europe/Uzhgorod"/>
+diff --git a/test/jdk/sun/util/resources/cldr/TimeZoneNamesTest.java b/test/jdk/sun/util/resources/cldr/TimeZoneNamesTest.java
+index c2b5672646c..53903d19d3d 100644
+--- a/test/jdk/sun/util/resources/cldr/TimeZoneNamesTest.java
++++ b/test/jdk/sun/util/resources/cldr/TimeZoneNamesTest.java
+@@ -23,7 +23,7 @@
+ 
+  /*
+  * @test
+- * @bug 8181157 8202537 8234347 8236548
++ * @bug 8181157 8202537 8234347 8236548 8293834
+  * @modules jdk.localedata
+  * @summary Checks CLDR time zone names are generated correctly at runtime
+  * @run testng/othervm -Djava.locale.providers=CLDR TimeZoneNamesTest
+@@ -102,6 +102,24 @@ public class TimeZoneNamesTest {
+                                                     "UTC+04:00",
+                                                     "heure : Astrakhan",
+                                                     "UTC+04:00"},
++            {"Europe/Kyiv",             Locale.US, "Eastern European Standard Time",
++                                                    "GMT+02:00",
++                                                    "Eastern European Summer Time",
++                                                    "GMT+03:00",
++                                                    "Eastern European Time",
++                                                    "GMT+02:00"},
++            {"Europe/Kyiv",             Locale.FRANCE, "heure normale d\u2019Europe de l\u2019Est",
++                                                    "UTC+02:00",
++                                                    "heure d\u2019\u00e9t\u00e9 d\u2019Europe de l\u2019Est",
++                                                    "UTC+03:00",
++                                                    "heure d\u2019Europe de l\u2019Est",
++                                                    "UTC+02:00"},
++            {"Europe/Kyiv",             Locale.GERMANY, "Osteurop\u00e4ische Normalzeit",
++                                                    "OEZ",
++                                                    "Osteurop\u00e4ische Sommerzeit",
++                                                    "OESZ",
++                                                    "Osteurop\u00e4ische Zeit",
++                                                    "OEZ"},
+             {"Europe/Saratov",          Locale.US, "Saratov Standard Time",
+                                                     "GMT+04:00",
+                                                     "Saratov Daylight Time",
diff --git a/SOURCES/jdk8294357-tzdata2022d.patch b/SOURCES/jdk8294357-tzdata2022d.patch
new file mode 100644
index 0000000..625efa5
--- /dev/null
+++ b/SOURCES/jdk8294357-tzdata2022d.patch
@@ -0,0 +1,304 @@
+commit f67b4de8a07b8158be1dfb5b09cdb4cc5b7ac93b
+Author: David Alvarez <alvdavi@amazon.com>
+Date:   Tue Oct 11 20:04:39 2022 +0000
+
+    8294357: (tz) Update Timezone Data to 2022d
+    
+    Reviewed-by: phh
+    Backport-of: f01573368f905f27d26f1d07d9cfd26dcc736a54
+
+diff --git a/make/data/tzdata/VERSION b/make/data/tzdata/VERSION
+index decb8716b22..889d0e6dad7 100644
+--- a/make/data/tzdata/VERSION
++++ b/make/data/tzdata/VERSION
+@@ -21,4 +21,4 @@
+ # or visit www.oracle.com if you need additional information or have any
+ # questions.
+ #
+-tzdata2022c
++tzdata2022d
+diff --git a/make/data/tzdata/asia b/make/data/tzdata/asia
+index 3a150b0f36b..f9df7432947 100644
+--- a/make/data/tzdata/asia
++++ b/make/data/tzdata/asia
+@@ -3398,10 +3398,6 @@ Zone	Asia/Karachi	4:28:12 -	LMT	1907
+ # The winter time in 2015 started on October 23 at 01:00.
+ # https://wafa.ps/ar_page.aspx?id=CgpCdYa670694628582aCgpCdY
+ # http://www.palestinecabinet.gov.ps/portal/meeting/details/27583
+-#
+-# From Paul Eggert (2019-04-10):
+-# For now, guess spring-ahead transitions are at 00:00 on the Saturday
+-# preceding March's last Sunday (i.e., Sat>=24).
+ 
+ # From P Chan (2021-10-18):
+ # http://wafa.ps/Pages/Details/34701
+@@ -3418,6 +3414,18 @@ Zone	Asia/Karachi	4:28:12 -	LMT	1907
+ # From Heba Hamad (2022-03-10):
+ # summer time will begin in Palestine from Sunday 03-27-2022, 00:00 AM.
+ 
++# From Heba Hamad (2022-08-30):
++# winter time will begin in Palestine from Saturday 10-29, 02:00 AM by
++# 60 minutes backwards.  Also the state of Palestine adopted the summer
++# and winter time for the years: 2023,2024,2025,2026 ...
++# https://mm.icann.org/pipermail/tz/attachments/20220830/9f024566/Time-0001.pdf
++# (2022-08-31): ... the Saturday before the last Sunday in March and October
++# at 2:00 AM ,for the years from 2023 to 2026.
++# (2022-09-05): https://mtit.pna.ps/Site/New/1453
++#
++# From Paul Eggert (2022-08-31):
++# For now, assume that this rule will also be used after 2026.
++
+ # Rule	NAME	FROM	TO	-	IN	ON	AT	SAVE	LETTER/S
+ Rule EgyptAsia	1957	only	-	May	10	0:00	1:00	S
+ Rule EgyptAsia	1957	1958	-	Oct	 1	0:00	0	-
+@@ -3448,14 +3456,16 @@ Rule Palestine	2013	only	-	Sep	27	0:00	0	-
+ Rule Palestine	2014	only	-	Oct	24	0:00	0	-
+ Rule Palestine	2015	only	-	Mar	28	0:00	1:00	S
+ Rule Palestine	2015	only	-	Oct	23	1:00	0	-
+-Rule Palestine	2016	2018	-	Mar	Sat>=24	1:00	1:00	S
+-Rule Palestine	2016	2018	-	Oct	Sat>=24	1:00	0	-
++Rule Palestine	2016	2018	-	Mar	Sat<=30	1:00	1:00	S
++Rule Palestine	2016	2018	-	Oct	Sat<=30	1:00	0	-
+ Rule Palestine	2019	only	-	Mar	29	0:00	1:00	S
+-Rule Palestine	2019	only	-	Oct	Sat>=24	0:00	0	-
+-Rule Palestine	2020	2021	-	Mar	Sat>=24	0:00	1:00	S
++Rule Palestine	2019	only	-	Oct	Sat<=30	0:00	0	-
++Rule Palestine	2020	2021	-	Mar	Sat<=30	0:00	1:00	S
+ Rule Palestine	2020	only	-	Oct	24	1:00	0	-
+-Rule Palestine	2021	max	-	Oct	Fri>=23	1:00	0	-
+-Rule Palestine	2022	max	-	Mar	Sun>=25	0:00	1:00	S
++Rule Palestine	2021	only	-	Oct	29	1:00	0	-
++Rule Palestine	2022	only	-	Mar	27	0:00	1:00	S
++Rule Palestine	2022	max	-	Oct	Sat<=30	2:00	0	-
++Rule Palestine	2023	max	-	Mar	Sat<=30	2:00	1:00	S
+ 
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+ Zone	Asia/Gaza	2:17:52	-	LMT	1900 Oct
+diff --git a/make/data/tzdata/backward b/make/data/tzdata/backward
+index d4a29e8cf29..7765d99aedf 100644
+--- a/make/data/tzdata/backward
++++ b/make/data/tzdata/backward
+@@ -113,6 +113,8 @@ Link	Etc/UTC			Etc/UCT
+ Link	Europe/London		Europe/Belfast
+ Link	Europe/Kyiv		Europe/Kiev
+ Link	Europe/Chisinau		Europe/Tiraspol
++Link	Europe/Kyiv		Europe/Uzhgorod
++Link	Europe/Kyiv		Europe/Zaporozhye
+ Link	Europe/London		GB
+ Link	Europe/London		GB-Eire
+ Link	Etc/GMT			GMT+0
+diff --git a/make/data/tzdata/europe b/make/data/tzdata/europe
+index 879b5337536..accc845dbaf 100644
+--- a/make/data/tzdata/europe
++++ b/make/data/tzdata/europe
+@@ -2638,10 +2638,14 @@ Zone Europe/Simferopol	 2:16:24 -	LMT	1880
+ # From Alexander Krivenyshev (2014-03-17):
+ # time change at 2:00 (2am) on March 30, 2014
+ # https://vz.ru/news/2014/3/17/677464.html
+-# From Paul Eggert (2014-03-30):
+-# Simferopol and Sevastopol reportedly changed their central town clocks
+-# late the previous day, but this appears to have been ceremonial
+-# and the discrepancies are small enough to not worry about.
++# From Tim Parenti (2022-07-01), per Paul Eggert (2014-03-30):
++# The clocks at the railway station in Simferopol were put forward from 22:00
++# to 24:00 the previous day in a "symbolic ceremony"; however, per
++# contemporaneous news reports, "ordinary Crimeans [made] the daylight savings
++# time switch at 2am" on Sunday.
++# https://www.business-standard.com/article/pti-stories/crimea-to-set-clocks-to-russia-time-114033000014_1.html
++# https://www.reuters.com/article/us-ukraine-crisis-crimea-time/crimea-switches-to-moscow-time-amid-incorporation-frenzy-idUKBREA2S0LT20140329
++# https://www.bbc.com/news/av/world-europe-26806583
+ 			 2:00	EU	EE%sT	2014 Mar 30  2:00
+ 			 4:00	-	MSK	2014 Oct 26  2:00s
+ 			 3:00	-	MSK
+@@ -3774,8 +3778,8 @@ Link	Europe/Istanbul	Asia/Istanbul	# Istanbul is in both continents.
+ # US colleague David Cochrane) are still trying to get more
+ # information upon these local deviations from Kiev rules.
+ #
+-# From Paul Eggert (2022-02-08):
+-# For now, assume that Ukraine's other three zones followed the same rules,
++# From Paul Eggert (2022-08-27):
++# For now, assume that Ukraine's zones all followed the same rules,
+ # except that Crimea switched to Moscow time in 1994 as described elsewhere.
+ 
+ # From Igor Karpov, who works for the Ukrainian Ministry of Justice,
+@@ -3845,21 +3849,7 @@ Link	Europe/Istanbul	Asia/Istanbul	# Istanbul is in both continents.
+ # * Ukrainian Government's Resolution of 20.03.1992, No. 139.
+ # http://www.uazakon.com/documents/date_8u/pg_grcasa.htm
+ 
+-# From Paul Eggert (2022-04-12):
+-# As is usual in tzdb, Ukrainian zones use the most common English spellings.
+-# In particular, tzdb's name Europe/Kyiv uses the most common spelling in
+-# English for Ukraine's capital.  Although tzdb's former name was Europe/Kiev,
+-# "Kyiv" is now more common due to widespread reporting of the current conflict.
+-# Conversely, tzdb continues to use the names Europe/Uzhgorod and
+-# Europe/Zaporozhye; this is similar to tzdb's use of Europe/Prague, which is
+-# certainly wrong as a transliteration of the Czech "Praha".
+-# English-language spelling of Ukrainian names is in flux, and
+-# some day "Uzhhorod" or "Zaporizhzhia" may become substantially more
+-# common in English; in the meantime, do not change these
+-# English spellings as that means less disruption for our users.
+-
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+-# This represents most of Ukraine.  See above for the spelling of "Kyiv".
+ Zone Europe/Kyiv	2:02:04 -	LMT	1880
+ 			2:02:04	-	KMT	1924 May  2 # Kyiv Mean Time
+ 			2:00	-	EET	1930 Jun 21
+@@ -3869,34 +3859,6 @@ Zone Europe/Kyiv	2:02:04 -	LMT	1880
+ 			2:00	1:00	EEST	1991 Sep 29  3:00
+ 			2:00	C-Eur	EE%sT	1996 May 13
+ 			2:00	EU	EE%sT
+-# Transcarpathia used CET 1990/1991.
+-# "Uzhhorod" is the transliteration of the Rusyn/Ukrainian pronunciation, but
+-# "Uzhgorod" is more common in English.
+-Zone Europe/Uzhgorod	1:29:12 -	LMT	1890 Oct
+-			1:00	-	CET	1940
+-			1:00	C-Eur	CE%sT	1944 Oct
+-			1:00	1:00	CEST	1944 Oct 26
+-			1:00	-	CET	1945 Jun 29
+-			3:00	Russia	MSK/MSD	1990
+-			3:00	-	MSK	1990 Jul  1  2:00
+-			1:00	-	CET	1991 Mar 31  3:00
+-			2:00	-	EET	1992 Mar 20
+-			2:00	C-Eur	EE%sT	1996 May 13
+-			2:00	EU	EE%sT
+-# Zaporozh'ye and eastern Lugansk oblasts observed DST 1990/1991.
+-# "Zaporizhzhia" is the transliteration of the Ukrainian name, but
+-# "Zaporozh'ye" is more common in English.  Use the common English
+-# spelling, except omit the apostrophe as it is not allowed in
+-# portable Posix file names.
+-Zone Europe/Zaporozhye	2:20:40 -	LMT	1880
+-			2:20	-	+0220	1924 May  2
+-			2:00	-	EET	1930 Jun 21
+-			3:00	-	MSK	1941 Aug 25
+-			1:00	C-Eur	CE%sT	1943 Oct 25
+-			3:00	Russia	MSK/MSD	1991 Mar 31  2:00
+-			2:00	E-Eur	EE%sT	1992 Mar 20
+-			2:00	C-Eur	EE%sT	1996 May 13
+-			2:00	EU	EE%sT
+ 
+ # Vatican City
+ # See Europe/Rome.
+diff --git a/make/data/tzdata/southamerica b/make/data/tzdata/southamerica
+index 13ec081c7e0..3c0e0e2061c 100644
+--- a/make/data/tzdata/southamerica
++++ b/make/data/tzdata/southamerica
+@@ -1332,8 +1332,14 @@ Zone America/Rio_Branco	-4:31:12 -	LMT	1914
+ # for America/Santiago will start on midnight of September 11th;
+ # and will end on April 1st, 2023. Magallanes region (America/Punta_Arenas)
+ # will keep UTC -3 "indefinitely"...  This is because on September 4th
+-# we will have a voting whether to approve a new Constitution....
+-# https://www.interior.gob.cl/noticias/2022/08/09/comunicado-el-proximo-sabado-10-de-septiembre-los-relojes-se-deben-adelantar-una-hora/
++# we will have a voting whether to approve a new Constitution.
++#
++# From Eduardo Romero Urra (2022-08-17):
++# https://www.diariooficial.interior.gob.cl/publicaciones/2022/08/13/43327/01/2172567.pdf
++#
++# From Paul Eggert (2022-08-17):
++# Although the presidential decree stops at fall 2026, assume that
++# similar DST rules will continue thereafter.
+ 
+ # Rule	NAME	FROM	TO	-	IN	ON	AT	SAVE	LETTER/S
+ Rule	Chile	1927	1931	-	Sep	 1	0:00	1:00	-
+diff --git a/make/data/tzdata/zone.tab b/make/data/tzdata/zone.tab
+index 51b65fa273c..ee025196e50 100644
+--- a/make/data/tzdata/zone.tab
++++ b/make/data/tzdata/zone.tab
+@@ -424,8 +424,6 @@ TV	-0831+17913	Pacific/Funafuti
+ TW	+2503+12130	Asia/Taipei
+ TZ	-0648+03917	Africa/Dar_es_Salaam
+ UA	+5026+03031	Europe/Kyiv	Ukraine (most areas)
+-UA	+4837+02218	Europe/Uzhgorod	Transcarpathia
+-UA	+4750+03510	Europe/Zaporozhye	Zaporozhye and east Lugansk
+ UG	+0019+03225	Africa/Kampala
+ UM	+2813-17722	Pacific/Midway	Midway Islands
+ UM	+1917+16637	Pacific/Wake	Wake Island
+diff --git a/src/java.base/share/classes/sun/util/calendar/ZoneInfoFile.java b/src/java.base/share/classes/sun/util/calendar/ZoneInfoFile.java
+index bfe0dd3b548..1dc82561f23 100644
+--- a/src/java.base/share/classes/sun/util/calendar/ZoneInfoFile.java
++++ b/src/java.base/share/classes/sun/util/calendar/ZoneInfoFile.java
+@@ -573,12 +573,8 @@ public final class ZoneInfoFile {
+                     // we can then pass in the dom = -1, dow > 0 into ZoneInfo
+                     //
+                     // hacking, assume the >=24 is the result of ZRB optimization for
+-                    // "last", it works for now. From tzdata2020d this hacking
+-                    // will not work for Asia/Gaza and Asia/Hebron which follow
+-                    // Palestine DST rules.
+-                    if (dom < 0 || dom >= 24 &&
+-                                   !(zoneId.equals("Asia/Gaza") ||
+-                                     zoneId.equals("Asia/Hebron"))) {
++                    // "last", it works for now.
++                    if (dom < 0 || dom >= 24) {
+                         params[1] = -1;
+                         params[2] = toCalendarDOW[dow];
+                     } else {
+@@ -600,7 +596,6 @@ public final class ZoneInfoFile {
+                     params[7] = 0;
+                 } else {
+                     // hacking: see comment above
+-                    // No need of hacking for Asia/Gaza and Asia/Hebron from tz2021e
+                     if (dom < 0 || dom >= 24) {
+                         params[6] = -1;
+                         params[7] = toCalendarDOW[dow];
+diff --git a/test/jdk/java/util/TimeZone/TimeZoneData/VERSION b/test/jdk/java/util/TimeZone/TimeZoneData/VERSION
+index c32bee39fba..71470168456 100644
+--- a/test/jdk/java/util/TimeZone/TimeZoneData/VERSION
++++ b/test/jdk/java/util/TimeZone/TimeZoneData/VERSION
+@@ -1 +1 @@
+-tzdata2022c
++tzdata2022d
+diff --git a/test/jdk/java/util/TimeZone/TimeZoneData/aliases.txt b/test/jdk/java/util/TimeZone/TimeZoneData/aliases.txt
+index a5e6428a3f5..e3ce742f887 100644
+--- a/test/jdk/java/util/TimeZone/TimeZoneData/aliases.txt
++++ b/test/jdk/java/util/TimeZone/TimeZoneData/aliases.txt
+@@ -183,6 +183,8 @@ Link	Etc/UTC			Etc/UCT
+ Link	Europe/London		Europe/Belfast
+ Link	Europe/Kyiv		Europe/Kiev
+ Link	Europe/Chisinau		Europe/Tiraspol
++Link	Europe/Kyiv		Europe/Uzhgorod
++Link	Europe/Kyiv		Europe/Zaporozhye
+ Link	Europe/London		GB
+ Link	Europe/London		GB-Eire
+ Link	Etc/GMT			GMT+0
+diff --git a/test/jdk/java/util/TimeZone/TimeZoneData/displaynames.txt b/test/jdk/java/util/TimeZone/TimeZoneData/displaynames.txt
+index fc148537f1f..b3823958ae4 100644
+--- a/test/jdk/java/util/TimeZone/TimeZoneData/displaynames.txt
++++ b/test/jdk/java/util/TimeZone/TimeZoneData/displaynames.txt
+@@ -163,11 +163,9 @@ Europe/Simferopol MSK
+ Europe/Sofia EET EEST
+ Europe/Tallinn EET EEST
+ Europe/Tirane CET CEST
+-Europe/Uzhgorod EET EEST
+ Europe/Vienna CET CEST
+ Europe/Vilnius EET EEST
+ Europe/Warsaw CET CEST
+-Europe/Zaporozhye EET EEST
+ Europe/Zurich CET CEST
+ HST HST
+ MET MET MEST
+diff --git a/test/jdk/sun/util/calendar/zi/TestZoneInfo310.java b/test/jdk/sun/util/calendar/zi/TestZoneInfo310.java
+index 7b50c342a0d..a7d14f1aa21 100644
+--- a/test/jdk/sun/util/calendar/zi/TestZoneInfo310.java
++++ b/test/jdk/sun/util/calendar/zi/TestZoneInfo310.java
+@@ -176,11 +176,12 @@ public class TestZoneInfo310 {
+              * save time in IANA tzdata. This bug is tracked via JDK-8223388.
+              *
+              * These are the zones/rules that employ negative DST in vanguard
+-             * format (as of 2019a):
++             * format (as of 2019a), Palestine added in 2022d:
+              *
+              *  - Rule "Eire"
+              *  - Rule "Morocco"
+              *  - Rule "Namibia"
++             *  - Rule "Palestine"
+              *  - Zone "Europe/Prague"
+              *
+              * Tehran/Iran rule has rules beyond 2037, in which javazic assumes
+@@ -196,6 +197,8 @@ public class TestZoneInfo310 {
+                 zid.equals("Europe/Dublin") || // uses "Eire" rule
+                 zid.equals("Europe/Prague") ||
+                 zid.equals("Asia/Tehran") || // last rule mismatch
++                zid.equals("Asia/Gaza") || // uses "Palestine" rule
++                zid.equals("Asia/Hebron") || // uses "Palestine" rule
+                 zid.equals("Iran")) { // last rule mismatch
+                     continue;
+             }
diff --git a/SOURCES/jdk8295173-tzdata2022e.patch b/SOURCES/jdk8295173-tzdata2022e.patch
new file mode 100644
index 0000000..f5823a0
--- /dev/null
+++ b/SOURCES/jdk8295173-tzdata2022e.patch
@@ -0,0 +1,420 @@
+commit 826a9b80d7db0395308d9f8d5f23d5afc0756971
+Author: duke <duke@openjdk.org>
+Date:   Fri Oct 14 20:26:41 2022 +0000
+
+    Backport 21407dec0156301871a83328615e4d975c4287c4
+
+diff --git a/make/data/tzdata/VERSION b/make/data/tzdata/VERSION
+index 889d0e6dad7..b8cb36e69f4 100644
+--- a/make/data/tzdata/VERSION
++++ b/make/data/tzdata/VERSION
+@@ -21,4 +21,4 @@
+ # or visit www.oracle.com if you need additional information or have any
+ # questions.
+ #
+-tzdata2022d
++tzdata2022e
+diff --git a/make/data/tzdata/asia b/make/data/tzdata/asia
+index f9df7432947..5b2337fd0b6 100644
+--- a/make/data/tzdata/asia
++++ b/make/data/tzdata/asia
+@@ -2254,6 +2254,17 @@ Zone	Asia/Tokyo	9:18:59	-	LMT	1887 Dec 31 15:00u
+ # From the Arabic version, it seems to say it would be at midnight
+ # (assume 24:00) on the last Thursday in February, starting from 2022.
+ 
++# From Issam Al-Zuwairi (2022-10-05):
++# The Council of Ministers in Jordan decided Wednesday 5th October 2022,
++# that daylight saving time (DST) will be throughout the year....
++#
++# From Brian Inglis (2022-10-06):
++# https://petra.gov.jo/Include/InnerPage.jsp?ID=45567&lang=en&name=en_news
++#
++# From Paul Eggert (2022-10-05):
++# Like Syria, model this as a transition from EEST +03 (DST) to plain +03
++# (non-DST) at the point where DST would otherwise have ended.
++
+ # Rule	NAME	FROM	TO	-	IN	ON	AT	SAVE	LETTER/S
+ Rule	Jordan	1973	only	-	Jun	6	0:00	1:00	S
+ Rule	Jordan	1973	1975	-	Oct	1	0:00	0	-
+@@ -2285,11 +2296,12 @@ Rule	Jordan	2005	only	-	Sep	lastFri	0:00s	0	-
+ Rule	Jordan	2006	2011	-	Oct	lastFri	0:00s	0	-
+ Rule	Jordan	2013	only	-	Dec	20	0:00	0	-
+ Rule	Jordan	2014	2021	-	Mar	lastThu	24:00	1:00	S
+-Rule	Jordan	2014	max	-	Oct	lastFri	0:00s	0	-
+-Rule	Jordan	2022	max	-	Feb	lastThu	24:00	1:00	S
++Rule	Jordan	2014	2022	-	Oct	lastFri	0:00s	0	-
++Rule	Jordan	2022	only	-	Feb	lastThu	24:00	1:00	S
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+ Zone	Asia/Amman	2:23:44 -	LMT	1931
+-			2:00	Jordan	EE%sT
++			2:00	Jordan	EE%sT	2022 Oct 28 0:00s
++			3:00	-	+03
+ 
+ 
+ # Kazakhstan
+@@ -3838,19 +3850,27 @@ Rule	Syria	2007	only	-	Nov	 Fri>=1	0:00	0	-
+ # Our brief summary:
+ # https://www.timeanddate.com/news/time/syria-dst-2012.html
+ 
+-# From Arthur David Olson (2012-03-27):
+-# Assume last Friday in March going forward XXX.
++# From Steffen Thorsen (2022-10-05):
++# Syria is adopting year-round DST, starting this autumn....
++# From https://www.enabbaladi.net/archives/607812
++# "This [the decision] came after the weekly government meeting today,
++# Tuesday 4 October ..."
++#
++# From Paul Eggert (2022-10-05):
++# Like Jordan, model this as a transition from EEST +03 (DST) to plain +03
++# (non-DST) at the point where DST would otherwise have ended.
+ 
+ Rule	Syria	2008	only	-	Apr	Fri>=1	0:00	1:00	S
+ Rule	Syria	2008	only	-	Nov	1	0:00	0	-
+ Rule	Syria	2009	only	-	Mar	lastFri	0:00	1:00	S
+ Rule	Syria	2010	2011	-	Apr	Fri>=1	0:00	1:00	S
+-Rule	Syria	2012	max	-	Mar	lastFri	0:00	1:00	S
+-Rule	Syria	2009	max	-	Oct	lastFri	0:00	0	-
++Rule	Syria	2012	2022	-	Mar	lastFri	0:00	1:00	S
++Rule	Syria	2009	2022	-	Oct	lastFri	0:00	0	-
+ 
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+ Zone	Asia/Damascus	2:25:12 -	LMT	1920 # Dimashq
+-			2:00	Syria	EE%sT
++			2:00	Syria	EE%sT	2022 Oct 28 0:00
++			3:00	-	+03
+ 
+ # Tajikistan
+ # From Shanks & Pottenger.
+diff --git a/make/data/tzdata/europe b/make/data/tzdata/europe
+index accc845dbaf..2832c4b9763 100644
+--- a/make/data/tzdata/europe
++++ b/make/data/tzdata/europe
+@@ -3417,7 +3417,7 @@ Zone	Europe/Madrid	-0:14:44 -	LMT	1901 Jan  1  0:00u
+ 			 0:00	Spain	WE%sT	1940 Mar 16 23:00
+ 			 1:00	Spain	CE%sT	1979
+ 			 1:00	EU	CE%sT
+-Zone	Africa/Ceuta	-0:21:16 -	LMT	1900 Dec 31 23:38:44
++Zone	Africa/Ceuta	-0:21:16 -	LMT	1901 Jan  1  0:00u
+ 			 0:00	-	WET	1918 May  6 23:00
+ 			 0:00	1:00	WEST	1918 Oct  7 23:00
+ 			 0:00	-	WET	1924
+diff --git a/make/data/tzdata/northamerica b/make/data/tzdata/northamerica
+index 114cef14cce..ce4ee74582c 100644
+--- a/make/data/tzdata/northamerica
++++ b/make/data/tzdata/northamerica
+@@ -462,7 +462,7 @@ Rule	Chicago	1922	1966	-	Apr	lastSun	2:00	1:00	D
+ Rule	Chicago	1922	1954	-	Sep	lastSun	2:00	0	S
+ Rule	Chicago	1955	1966	-	Oct	lastSun	2:00	0	S
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+-Zone America/Chicago	-5:50:36 -	LMT	1883 Nov 18 12:09:24
++Zone America/Chicago	-5:50:36 -	LMT	1883 Nov 18 18:00u
+ 			-6:00	US	C%sT	1920
+ 			-6:00	Chicago	C%sT	1936 Mar  1  2:00
+ 			-5:00	-	EST	1936 Nov 15  2:00
+@@ -471,7 +471,7 @@ Zone America/Chicago	-5:50:36 -	LMT	1883 Nov 18 12:09:24
+ 			-6:00	Chicago	C%sT	1967
+ 			-6:00	US	C%sT
+ # Oliver County, ND switched from mountain to central time on 1992-10-25.
+-Zone America/North_Dakota/Center -6:45:12 - LMT	1883 Nov 18 12:14:48
++Zone America/North_Dakota/Center -6:45:12 - LMT	1883 Nov 18 19:00u
+ 			-7:00	US	M%sT	1992 Oct 25  2:00
+ 			-6:00	US	C%sT
+ # Morton County, ND, switched from mountain to central time on
+@@ -481,7 +481,7 @@ Zone America/North_Dakota/Center -6:45:12 - LMT	1883 Nov 18 12:14:48
+ # Jones, Mellette, and Todd Counties in South Dakota;
+ # but in practice these other counties were already observing central time.
+ # See <http://www.epa.gov/fedrgstr/EPA-IMPACT/2003/October/Day-28/i27056.htm>.
+-Zone America/North_Dakota/New_Salem -6:45:39 - LMT	1883 Nov 18 12:14:21
++Zone America/North_Dakota/New_Salem -6:45:39 - LMT 1883 Nov 18 19:00u
+ 			-7:00	US	M%sT	2003 Oct 26  2:00
+ 			-6:00	US	C%sT
+ 
+@@ -498,7 +498,7 @@ Zone America/North_Dakota/New_Salem -6:45:39 - LMT	1883 Nov 18 12:14:21
+ # largest city in Mercer County).  Google Maps places Beulah's city hall
+ # at 47° 15' 51" N, 101° 46' 40" W, which yields an offset of 6h47'07".
+ 
+-Zone America/North_Dakota/Beulah -6:47:07 - LMT	1883 Nov 18 12:12:53
++Zone America/North_Dakota/Beulah -6:47:07 - LMT	1883 Nov 18 19:00u
+ 			-7:00	US	M%sT	2010 Nov  7  2:00
+ 			-6:00	US	C%sT
+ 
+@@ -530,7 +530,7 @@ Rule	Denver	1921	only	-	May	22	2:00	0	S
+ Rule	Denver	1965	1966	-	Apr	lastSun	2:00	1:00	D
+ Rule	Denver	1965	1966	-	Oct	lastSun	2:00	0	S
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+-Zone America/Denver	-6:59:56 -	LMT	1883 Nov 18 12:00:04
++Zone America/Denver	-6:59:56 -	LMT	1883 Nov 18 19:00u
+ 			-7:00	US	M%sT	1920
+ 			-7:00	Denver	M%sT	1942
+ 			-7:00	US	M%sT	1946
+@@ -583,7 +583,7 @@ Rule	CA	1950	1966	-	Apr	lastSun	1:00	1:00	D
+ Rule	CA	1950	1961	-	Sep	lastSun	2:00	0	S
+ Rule	CA	1962	1966	-	Oct	lastSun	2:00	0	S
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+-Zone America/Los_Angeles -7:52:58 -	LMT	1883 Nov 18 12:07:02
++Zone America/Los_Angeles -7:52:58 -	LMT	1883 Nov 18 20:00u
+ 			-8:00	US	P%sT	1946
+ 			-8:00	CA	P%sT	1967
+ 			-8:00	US	P%sT
+@@ -845,7 +845,7 @@ Zone Pacific/Honolulu	-10:31:26 -	LMT	1896 Jan 13 12:00
+ # Go with the Arizona State Library instead.
+ 
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+-Zone America/Phoenix	-7:28:18 -	LMT	1883 Nov 18 11:31:42
++Zone America/Phoenix	-7:28:18 -	LMT	1883 Nov 18 19:00u
+ 			-7:00	US	M%sT	1944 Jan  1  0:01
+ 			-7:00	-	MST	1944 Apr  1  0:01
+ 			-7:00	US	M%sT	1944 Oct  1  0:01
+@@ -873,7 +873,7 @@ Link America/Phoenix America/Creston
+ # switched four weeks late in 1974.
+ #
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+-Zone America/Boise	-7:44:49 -	LMT	1883 Nov 18 12:15:11
++Zone America/Boise	-7:44:49 -	LMT	1883 Nov 18 20:00u
+ 			-8:00	US	P%sT	1923 May 13  2:00
+ 			-7:00	US	M%sT	1974
+ 			-7:00	-	MST	1974 Feb  3  2:00
+@@ -945,7 +945,7 @@ Rule Indianapolis 1941	only	-	Jun	22	2:00	1:00	D
+ Rule Indianapolis 1941	1954	-	Sep	lastSun	2:00	0	S
+ Rule Indianapolis 1946	1954	-	Apr	lastSun	2:00	1:00	D
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+-Zone America/Indiana/Indianapolis -5:44:38 - LMT	1883 Nov 18 12:15:22
++Zone America/Indiana/Indianapolis -5:44:38 - LMT 1883 Nov 18 18:00u
+ 			-6:00	US	C%sT	1920
+ 			-6:00 Indianapolis C%sT	1942
+ 			-6:00	US	C%sT	1946
+@@ -965,7 +965,7 @@ Rule	Marengo	1951	only	-	Sep	lastSun	2:00	0	S
+ Rule	Marengo	1954	1960	-	Apr	lastSun	2:00	1:00	D
+ Rule	Marengo	1954	1960	-	Sep	lastSun	2:00	0	S
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+-Zone America/Indiana/Marengo -5:45:23 -	LMT	1883 Nov 18 12:14:37
++Zone America/Indiana/Marengo -5:45:23 -	LMT	1883 Nov 18 18:00u
+ 			-6:00	US	C%sT	1951
+ 			-6:00	Marengo	C%sT	1961 Apr 30  2:00
+ 			-5:00	-	EST	1969
+@@ -989,7 +989,7 @@ Rule Vincennes	1960	only	-	Oct	lastSun	2:00	0	S
+ Rule Vincennes	1961	only	-	Sep	lastSun	2:00	0	S
+ Rule Vincennes	1962	1963	-	Oct	lastSun	2:00	0	S
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+-Zone America/Indiana/Vincennes -5:50:07 - LMT	1883 Nov 18 12:09:53
++Zone America/Indiana/Vincennes -5:50:07 - LMT	1883 Nov 18 18:00u
+ 			-6:00	US	C%sT	1946
+ 			-6:00 Vincennes	C%sT	1964 Apr 26  2:00
+ 			-5:00	-	EST	1969
+@@ -1009,7 +1009,7 @@ Rule Perry	1955	1960	-	Sep	lastSun	2:00	0	S
+ Rule Perry	1956	1963	-	Apr	lastSun	2:00	1:00	D
+ Rule Perry	1961	1963	-	Oct	lastSun	2:00	0	S
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+-Zone America/Indiana/Tell_City -5:47:03 - LMT	1883 Nov 18 12:12:57
++Zone America/Indiana/Tell_City -5:47:03 - LMT	1883 Nov 18 18:00u
+ 			-6:00	US	C%sT	1946
+ 			-6:00 Perry	C%sT	1964 Apr 26  2:00
+ 			-5:00	-	EST	1967 Oct 29  2:00
+@@ -1026,7 +1026,7 @@ Rule	Pike	1955	1960	-	Sep	lastSun	2:00	0	S
+ Rule	Pike	1956	1964	-	Apr	lastSun	2:00	1:00	D
+ Rule	Pike	1961	1964	-	Oct	lastSun	2:00	0	S
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+-Zone America/Indiana/Petersburg -5:49:07 - LMT	1883 Nov 18 12:10:53
++Zone America/Indiana/Petersburg -5:49:07 - LMT	1883 Nov 18 18:00u
+ 			-6:00	US	C%sT	1955
+ 			-6:00	Pike	C%sT	1965 Apr 25  2:00
+ 			-5:00	-	EST	1966 Oct 30  2:00
+@@ -1048,7 +1048,7 @@ Rule	Starke	1955	1956	-	Oct	lastSun	2:00	0	S
+ Rule	Starke	1957	1958	-	Sep	lastSun	2:00	0	S
+ Rule	Starke	1959	1961	-	Oct	lastSun	2:00	0	S
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+-Zone America/Indiana/Knox -5:46:30 -	LMT	1883 Nov 18 12:13:30
++Zone America/Indiana/Knox -5:46:30 -	LMT	1883 Nov 18 18:00u
+ 			-6:00	US	C%sT	1947
+ 			-6:00	Starke	C%sT	1962 Apr 29  2:00
+ 			-5:00	-	EST	1963 Oct 27  2:00
+@@ -1064,7 +1064,7 @@ Rule	Pulaski	1946	1954	-	Sep	lastSun	2:00	0	S
+ Rule	Pulaski	1955	1956	-	Oct	lastSun	2:00	0	S
+ Rule	Pulaski	1957	1960	-	Sep	lastSun	2:00	0	S
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+-Zone America/Indiana/Winamac -5:46:25 - LMT	1883 Nov 18 12:13:35
++Zone America/Indiana/Winamac -5:46:25 - LMT	1883 Nov 18 18:00u
+ 			-6:00	US	C%sT	1946
+ 			-6:00	Pulaski	C%sT	1961 Apr 30  2:00
+ 			-5:00	-	EST	1969
+@@ -1075,7 +1075,7 @@ Zone America/Indiana/Winamac -5:46:25 - LMT	1883 Nov 18 12:13:35
+ #
+ # Switzerland County, Indiana, did not observe DST from 1973 through 2005.
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+-Zone America/Indiana/Vevay -5:40:16 -	LMT	1883 Nov 18 12:19:44
++Zone America/Indiana/Vevay -5:40:16 -	LMT	1883 Nov 18 18:00u
+ 			-6:00	US	C%sT	1954 Apr 25  2:00
+ 			-5:00	-	EST	1969
+ 			-5:00	US	E%sT	1973
+@@ -1111,7 +1111,7 @@ Rule Louisville	1950	1961	-	Apr	lastSun	2:00	1:00	D
+ Rule Louisville	1950	1955	-	Sep	lastSun	2:00	0	S
+ Rule Louisville	1956	1961	-	Oct	lastSun	2:00	0	S
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+-Zone America/Kentucky/Louisville -5:43:02 -	LMT	1883 Nov 18 12:16:58
++Zone America/Kentucky/Louisville -5:43:02 - LMT	1883 Nov 18 18:00u
+ 			-6:00	US	C%sT	1921
+ 			-6:00 Louisville C%sT	1942
+ 			-6:00	US	C%sT	1946
+@@ -1145,7 +1145,7 @@ Zone America/Kentucky/Louisville -5:43:02 -	LMT	1883 Nov 18 12:16:58
+ # Federal Register 65, 160 (2000-08-17), pp 50154-50158.
+ # https://www.gpo.gov/fdsys/pkg/FR-2000-08-17/html/00-20854.htm
+ #
+-Zone America/Kentucky/Monticello -5:39:24 - LMT	1883 Nov 18 12:20:36
++Zone America/Kentucky/Monticello -5:39:24 - LMT	1883 Nov 18 18:00u
+ 			-6:00	US	C%sT	1946
+ 			-6:00	-	CST	1968
+ 			-6:00	US	C%sT	2000 Oct 29  2:00
+@@ -2640,6 +2640,8 @@ Zone America/Dawson	-9:17:40 -	LMT	1900 Aug 20
+ #    longitude they are located at.
+ 
+ # Rule	NAME	FROM	TO	-	IN	ON	AT	SAVE	LETTER/S
++Rule	Mexico	1931	only	-	May	1	23:00	1:00	D
++Rule	Mexico	1931	only	-	Oct	1	0:00	0	S
+ Rule	Mexico	1939	only	-	Feb	5	0:00	1:00	D
+ Rule	Mexico	1939	only	-	Jun	25	0:00	0	S
+ Rule	Mexico	1940	only	-	Dec	9	0:00	1:00	D
+@@ -2656,13 +2658,13 @@ Rule	Mexico	2002	max	-	Apr	Sun>=1	2:00	1:00	D
+ Rule	Mexico	2002	max	-	Oct	lastSun	2:00	0	S
+ # Zone	NAME		STDOFF	RULES	FORMAT	[UNTIL]
+ # Quintana Roo; represented by Cancún
+-Zone America/Cancun	-5:47:04 -	LMT	1922 Jan  1  0:12:56
++Zone America/Cancun	-5:47:04 -	LMT	1922 Jan  1  6:00u
+ 			-6:00	-	CST	1981 Dec 23
+ 			-5:00	Mexico	E%sT	1998 Aug  2  2:00
+ 			-6:00	Mexico	C%sT	2015 Feb  1  2:00
+ 			-5:00	-	EST
+ # Campeche, Yucatán; represented by Mérida
+-Zone America/Merida	-5:58:28 -	LMT	1922 Jan  1  0:01:32
++Zone America/Merida	-5:58:28 -	LMT	1922 Jan  1  6:00u
+ 			-6:00	-	CST	1981 Dec 23
+ 			-5:00	-	EST	1982 Dec  2
+ 			-6:00	Mexico	C%sT
+@@ -2676,23 +2678,21 @@ Zone America/Merida	-5:58:28 -	LMT	1922 Jan  1  0:01:32
+ # See: Inicia mañana Horario de Verano en zona fronteriza, El Universal,
+ # 2016-03-12
+ # http://www.eluniversal.com.mx/articulo/estados/2016/03/12/inicia-manana-horario-de-verano-en-zona-fronteriza
+-Zone America/Matamoros	-6:40:00 -	LMT	1921 Dec 31 23:20:00
++Zone America/Matamoros	-6:30:00 -	LMT	1922 Jan  1  6:00u
+ 			-6:00	-	CST	1988
+ 			-6:00	US	C%sT	1989
+ 			-6:00	Mexico	C%sT	2010
+ 			-6:00	US	C%sT
+ # Durango; Coahuila, Nuevo León, Tamaulipas (away from US border)
+-Zone America/Monterrey	-6:41:16 -	LMT	1921 Dec 31 23:18:44
++Zone America/Monterrey	-6:41:16 -	LMT	1922 Jan  1  6:00u
+ 			-6:00	-	CST	1988
+ 			-6:00	US	C%sT	1989
+ 			-6:00	Mexico	C%sT
+ # Central Mexico
+-Zone America/Mexico_City -6:36:36 -	LMT	1922 Jan  1  0:23:24
++Zone America/Mexico_City -6:36:36 -	LMT	1922 Jan  1  7:00u
+ 			-7:00	-	MST	1927 Jun 10 23:00
+ 			-6:00	-	CST	1930 Nov 15
+-			-7:00	-	MST	1931 May  1 23:00
+-			-6:00	-	CST	1931 Oct
+-			-7:00	-	MST	1932 Apr  1
++			-7:00	Mexico	M%sT	1932 Apr  1
+ 			-6:00	Mexico	C%sT	2001 Sep 30  2:00
+ 			-6:00	-	CST	2002 Feb 20
+ 			-6:00	Mexico	C%sT
+@@ -2700,35 +2700,29 @@ Zone America/Mexico_City -6:36:36 -	LMT	1922 Jan  1  0:23:24
+ # This includes the municipalities of Janos, Ascensión, Juárez, Guadalupe,
+ # Práxedis G Guerrero, Coyame del Sotol, Ojinaga, and Manuel Benavides.
+ # (See the 2016-03-12 El Universal source mentioned above.)
+-Zone America/Ojinaga	-6:57:40 -	LMT	1922 Jan  1  0:02:20
++Zone America/Ojinaga	-6:57:40 -	LMT	1922 Jan  1  7:00u
+ 			-7:00	-	MST	1927 Jun 10 23:00
+ 			-6:00	-	CST	1930 Nov 15
+-			-7:00	-	MST	1931 May  1 23:00
+-			-6:00	-	CST	1931 Oct
+-			-7:00	-	MST	1932 Apr  1
++			-7:00	Mexico	M%sT	1932 Apr  1
+ 			-6:00	-	CST	1996
+ 			-6:00	Mexico	C%sT	1998
+ 			-6:00	-	CST	1998 Apr Sun>=1  3:00
+ 			-7:00	Mexico	M%sT	2010
+ 			-7:00	US	M%sT
+ # Chihuahua (away from US border)
+-Zone America/Chihuahua	-7:04:20 -	LMT	1921 Dec 31 23:55:40
++Zone America/Chihuahua	-7:04:20 -	LMT	1922 Jan  1  7:00u
+ 			-7:00	-	MST	1927 Jun 10 23:00
+ 			-6:00	-	CST	1930 Nov 15
+-			-7:00	-	MST	1931 May  1 23:00
+-			-6:00	-	CST	1931 Oct
+-			-7:00	-	MST	1932 Apr  1
++			-7:00	Mexico	M%sT	1932 Apr  1
+ 			-6:00	-	CST	1996
+ 			-6:00	Mexico	C%sT	1998
+ 			-6:00	-	CST	1998 Apr Sun>=1  3:00
+ 			-7:00	Mexico	M%sT
+ # Sonora
+-Zone America/Hermosillo	-7:23:52 -	LMT	1921 Dec 31 23:36:08
++Zone America/Hermosillo	-7:23:52 -	LMT	1922 Jan  1  7:00u
+ 			-7:00	-	MST	1927 Jun 10 23:00
+ 			-6:00	-	CST	1930 Nov 15
+-			-7:00	-	MST	1931 May  1 23:00
+-			-6:00	-	CST	1931 Oct
+-			-7:00	-	MST	1932 Apr  1
++			-7:00	Mexico	M%sT	1932 Apr  1
+ 			-6:00	-	CST	1942 Apr 24
+ 			-7:00	-	MST	1949 Jan 14
+ 			-8:00	-	PST	1970
+@@ -2763,24 +2757,20 @@ Zone America/Hermosillo	-7:23:52 -	LMT	1921 Dec 31 23:36:08
+ # Use "Bahia_Banderas" to keep the name to fourteen characters.
+ 
+ # Mazatlán
+-Zone America/Mazatlan	-7:05:40 -	LMT	1921 Dec 31 23:54:20
++Zone America/Mazatlan	-7:05:40 -	LMT	1922 Jan  1  7:00u
+ 			-7:00	-	MST	1927 Jun 10 23:00
+ 			-6:00	-	CST	1930 Nov 15
+-			-7:00	-	MST	1931 May  1 23:00
+-			-6:00	-	CST	1931 Oct
+-			-7:00	-	MST	1932 Apr  1
++			-7:00	Mexico	M%sT	1932 Apr  1
+ 			-6:00	-	CST	1942 Apr 24
+ 			-7:00	-	MST	1949 Jan 14
+ 			-8:00	-	PST	1970
+ 			-7:00	Mexico	M%sT
+ 
+ # Bahía de Banderas
+-Zone America/Bahia_Banderas	-7:01:00 -	LMT	1921 Dec 31 23:59:00
++Zone America/Bahia_Banderas -7:01:00 -	LMT	1922 Jan  1  7:00u
+ 			-7:00	-	MST	1927 Jun 10 23:00
+ 			-6:00	-	CST	1930 Nov 15
+-			-7:00	-	MST	1931 May  1 23:00
+-			-6:00	-	CST	1931 Oct
+-			-7:00	-	MST	1932 Apr  1
++			-7:00	Mexico	M%sT	1932 Apr  1
+ 			-6:00	-	CST	1942 Apr 24
+ 			-7:00	-	MST	1949 Jan 14
+ 			-8:00	-	PST	1970
+@@ -2788,7 +2778,7 @@ Zone America/Bahia_Banderas	-7:01:00 -	LMT	1921 Dec 31 23:59:00
+ 			-6:00	Mexico	C%sT
+ 
+ # Baja California
+-Zone America/Tijuana	-7:48:04 -	LMT	1922 Jan  1  0:11:56
++Zone America/Tijuana	-7:48:04 -	LMT	1922 Jan  1  7:00u
+ 			-7:00	-	MST	1924
+ 			-8:00	-	PST	1927 Jun 10 23:00
+ 			-7:00	-	MST	1930 Nov 15
+diff --git a/test/jdk/java/util/TimeZone/TimeZoneData/VERSION b/test/jdk/java/util/TimeZone/TimeZoneData/VERSION
+index 71470168456..0cad939008f 100644
+--- a/test/jdk/java/util/TimeZone/TimeZoneData/VERSION
++++ b/test/jdk/java/util/TimeZone/TimeZoneData/VERSION
+@@ -1 +1 @@
+-tzdata2022d
++tzdata2022e
+diff --git a/test/jdk/java/util/TimeZone/TimeZoneData/displaynames.txt b/test/jdk/java/util/TimeZone/TimeZoneData/displaynames.txt
+index b3823958ae4..2f2786f1c69 100644
+--- a/test/jdk/java/util/TimeZone/TimeZoneData/displaynames.txt
++++ b/test/jdk/java/util/TimeZone/TimeZoneData/displaynames.txt
+@@ -97,9 +97,7 @@ America/Winnipeg CST CDT
+ America/Yakutat AKST AKDT
+ America/Yellowknife MST MDT
+ Antarctica/Macquarie AEST AEDT
+-Asia/Amman EET EEST
+ Asia/Beirut EET EEST
+-Asia/Damascus EET EEST
+ Asia/Famagusta EET EEST
+ Asia/Gaza EET EEST
+ Asia/Hebron EET EEST
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 fdc31ab..9a9e823 100644
--- a/SPECS/java-11-openjdk.spec
+++ b/SPECS/java-11-openjdk.spec
@@ -331,8 +331,8 @@
 # New Version-String scheme-style defines
 %global featurever 11
 %global interimver 0
-%global updatever 16
-%global patchver 1
+%global updatever 17
+%global patchver 0
 # buildjdkver is usually same as %%{featurever},
 # but in time of bootstrap of next jdk, it is featurever-1,
 # and this it is better to change it here, on single place
@@ -377,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        1
-%global rpmrelease      3
+%global buildver        8
+%global rpmrelease      1
 #%%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
@@ -1143,9 +1143,9 @@ 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
+# 2022d required as of JDK-8294357
+# Should be bumped to 2022e once available (JDK-8295173)
+Requires: tzdata-java >= 2022d
 # for support of kernel stream control
 # libsctp.so.1 is being `dlopen`ed on demand
 Requires: lksctp-tools%{?_isa}
@@ -1358,8 +1358,6 @@ Patch1000: rh1648249-add_commented_out_nss_cfg_provider_to_java_security.patch
 Patch600: rh1750419-redhat_alt_java.patch
 # RH1582504: Use RSA as default for keytool, as DSA is disabled in all crypto policies except LEGACY
 Patch1003: rh1842572-rsa_default_for_keytool.patch
-# Add translations for Europe/Kyiv locally until upstream is fully updated for tzdata2022b
-Patch4: jdk8292223-tzdata2022b-kyiv.patch
 
 # Crypto policy and FIPS support patches
 # Patch is generated from the fips tree at https://github.com/rh-openjdk/jdk11u/tree/fips
@@ -1417,13 +1415,19 @@ 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
 # able to be removed once that release is out
 # and used by this RPM.
 #############################################
+# JDK-8293834: Update CLDR data following tzdata 2022c update
+Patch2001: jdk8293834-kyiv_cldr_update.patch
+# JDK-8294357: (tz) Update Timezone Data to 2022d
+Patch2002: jdk8294357-tzdata2022d.patch
+# JDK-8295173: (tz) Update Timezone Data to 2022e
+Patch2003: jdk8295173-tzdata2022e.patch
 
 BuildRequires: autoconf
 BuildRequires: automake
@@ -1458,8 +1462,9 @@ 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
+# 2022d required as of JDK-8294357
+# Should be bumped to 2022e once available (JDK-8295173)
+BuildRequires: tzdata-java >= 2022d
 # Earlier versions have a bug in tree vectorization on PPC
 BuildRequires: gcc >= 4.8.3-8
 
@@ -1477,11 +1482,11 @@ BuildRequires: libjpeg-devel
 BuildRequires: libpng-devel
 %else
 # Version in src/java.desktop/share/native/libfreetype/include/freetype/freetype.h
-Provides: bundled(freetype) = 2.12.0
+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) = 2.8.0
+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
@@ -1838,11 +1843,14 @@ pushd %{top_level_dir_name}
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
-%patch4 -p1
 # Add crypto policy and FIPS support
 %patch1001 -p1
 # nss.cfg PKCS11 support; must come last as it also alters java.security
 %patch1000 -p1
+# tzdata updates targetted for 11.0.18
+%patch2001 -p1
+%patch2002 -p1
+%patch2003 -p1
 popd # openjdk
 
 %patch600
@@ -1946,7 +1954,9 @@ function buildjdk() {
     local top_dir_abs_src_path=$(pwd)/%{top_level_dir_name}
     local top_dir_abs_build_path=$(pwd)/${outputdir}
 
-    if [ "x${link_opt}" = "xbundled" ] ; then
+    # 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";
@@ -1963,6 +1973,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 \
@@ -1983,8 +1997,8 @@ function buildjdk() {
     --with-native-debug-symbols="%{debug_symbols}" \
     --disable-sysconf-nss \
     --enable-unlimited-crypto \
-    --with-zlib=${link_opt} \
-    --with-freetype=${link_opt} \
+    --with-zlib=%{link_type} \
+    --with-freetype=%{link_type} \
     --with-libjpeg=${link_opt} \
     --with-giflib=${link_opt} \
     --with-libpng=${link_opt} \
@@ -2197,12 +2211,9 @@ if ! nm $JAVA_HOME/bin/%{alt_java_name} | grep set_speculation ; then true ; els
 %endif
 
 # Check translations are available for new timezones
-$JAVA_HOME/bin/javac --add-exports java.base/sun.util.resources=ALL-UNNAMED \
-                     --add-exports java.base/sun.util.locale.provider=ALL-UNNAMED \
-                     -d . %{SOURCE18}
-$JAVA_HOME/bin/java --add-exports java.base/sun.util.resources=ALL-UNNAMED \
-                    --add-exports java.base/sun.util.locale.provider=ALL-UNNAMED \
-                    $(echo $(basename %{SOURCE18})|sed "s|\.java||") "Europe/Kiev" "Europe/Kyiv"
+$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)
@@ -2652,6 +2663,20 @@ require "copy_jdk_configs.lua"
 %endif
 
 %changelog
+* Wed Oct 26 2022 Andrew Hughes <gnu.andrew@redhat.com> - 1:11.0.17.0.8-1
+- Update to jdk-11.0.17+8 (GA)
+- Update release notes to 11.0.17+8
+- Bump HarfBuzz bundled version to 4.4.1 following JDK-8289853
+- Bump FreeType bundled version to 2.12.1 following JDK-8290334
+- 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#2131864
+- Resolves: rhbz#2133695
+
 * 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#2121275