diff --git a/Directory.Build.props b/Directory.Build.props
index 044c0d5571..013305d551 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -24,8 +24,8 @@
1
8
0
- 482
- b08
+ 504
+ b01
OpenJDK $(OpenJdkMinorVersion)u$(OpenJdkUpdateVersion) $(OpenJdkBuildNumber)
$(OpenJdkMajorVersion).$(OpenJdkMinorVersion).$(OpenJdkMicroVersion)_$(OpenJdkUpdateVersion)-$(OpenJdkBuildNumber)
Oracle
diff --git a/ext/freetype b/ext/freetype
index 920c5502cc..0a0221a134 160000
--- a/ext/freetype
+++ b/ext/freetype
@@ -1 +1 @@
-Subproject commit 920c5502cc3ddda88f6c7d85ee834ac611bb11cc
+Subproject commit 0a0221a1347e2f1e07c395263540026e9a0aa7c7
diff --git a/ext/openjdk b/ext/openjdk
index 69137c6403..5c75a45a66 160000
--- a/ext/openjdk
+++ b/ext/openjdk
@@ -1 +1 @@
-Subproject commit 69137c64034c4d1c93e8d5c9fd1b46e3d8016d87
+Subproject commit 5c75a45a66cc5be500bda366c6f0812e9cd17aed
diff --git a/src/IKVM.OpenJDK.Tests/jdk/test/ExcludeList.txt b/src/IKVM.OpenJDK.Tests/jdk/test/ExcludeList.txt
index fc98abe323..24f416cb1d 100644
--- a/src/IKVM.OpenJDK.Tests/jdk/test/ExcludeList.txt
+++ b/src/IKVM.OpenJDK.Tests/jdk/test/ExcludeList.txt
@@ -1601,6 +1601,18 @@ javax/rmi/PortableRemoteObject/ConcurrentHashMapTest.java
javax/rmi/ssl/SSLSocketParametersTest.sh generic-all
javax/script/ProviderTest.sh generic-all
javax/security/auth/Subject/doAs/Test.sh generic-all
+# BulkSoundBank.java is the regression test for JDK-8350813, which guards
+# against OutOfMemoryError when rendering a bulky soundbank. The upstream fix
+# in AudioFileSoundbankReader.getSoundbank computes a budget from
+# Runtime.maxMemory() minus the used heap and throws InvalidMidiDataException
+# when the audio data will not fit. IKVM has no fixed heap, so maxMemory()
+# returns Long.MAX_VALUE as the spec requires, the budget is effectively
+# infinite, the guard never fires, and the read runs until the CLR throws.
+# The test also runs with -Xmx1g, which IKVM logs as an unrecognized option.
+# The test cannot pass while the fix is expressed purely in terms of a heap
+# cap we do not model. Excluded on all platforms, where it fails identically.
+javax/sound/midi/BulkSoundBank/BulkSoundBank.java generic-all
+
javax/sound/midi/Devices/InitializationHang.java generic-all
javax/sound/midi/File/SMPTESequence.java macosx-all
javax/sound/midi/Gervill/AudioFloatConverter/GetFormat.java macosx-all
@@ -3438,6 +3450,8 @@ security/infra/java/security/cert/CertPathValidator/certification/CAInterop.java
security/infra/java/security/cert/CertPathValidator/certification/CAInterop.java#twcaglobalrootca generic-all
security/infra/java/security/cert/CertPathValidator/certification/CAInterop.java#usertrusteccca generic-all
security/infra/java/security/cert/CertPathValidator/certification/CAInterop.java#usertrustrsaca generic-all
+security/infra/java/security/cert/CertPathValidator/certification/CAInterop.java#wisekeyglobalrootgbca generic-all
+security/infra/java/security/cert/CertPathValidator/certification/CAInterop.java#wisekeyglobalrootgcca generic-all
security/infra/java/security/cert/CertPathValidator/certification/DTrustCA.java generic-all
security/infra/java/security/cert/CertPathValidator/certification/HaricaCA.java generic-all
security/infra/java/security/cert/CertPathValidator/certification/LuxTrustCA.java generic-all