diff --git a/libcore/security/src/test/java/tests/security/cert/CertPathBuilder1Test.java b/libcore/security/src/test/java/tests/security/cert/CertPathBuilder1Test.java
index 5af75c2..1c45e57 100644
--- a/libcore/security/src/test/java/tests/security/cert/CertPathBuilder1Test.java
+++ b/libcore/security/src/test/java/tests/security/cert/CertPathBuilder1Test.java
@@ -22,12 +22,11 @@
 
 package tests.security.cert;
 
+import dalvik.annotation.KnownFailure;
 import dalvik.annotation.TestLevel;
 import dalvik.annotation.TestTargetClass;
 import dalvik.annotation.TestTargetNew;
 
-import junit.framework.TestCase;
-
 import org.apache.harmony.security.tests.support.SpiEngUtils;
 import org.apache.harmony.security.tests.support.cert.MyCertPathBuilderSpi;
 import org.apache.harmony.security.tests.support.cert.TestUtils;
@@ -45,6 +44,8 @@
 import java.security.cert.CertPathParameters;
 import java.security.cert.CertificateException;
 
+import junit.framework.TestCase;
+
 /**
  * Tests for <code>CertPathBuilder</code> class constructors and
  * methods.
@@ -392,6 +393,7 @@
             args={CertPathParameters.class}
     )
     // Test passed on RI
+    @KnownFailure(value="expired certificate bug 2322662")
     public void testBuild() throws Exception {
         TestUtils.initCertPathSSCertChain();
         CertPathParameters params = TestUtils.getCertPathParameters();
diff --git a/libcore/security/src/test/java/tests/security/cert/CertPathTest.java b/libcore/security/src/test/java/tests/security/cert/CertPathTest.java
index 5edb3f5..31ffeee 100644
--- a/libcore/security/src/test/java/tests/security/cert/CertPathTest.java
+++ b/libcore/security/src/test/java/tests/security/cert/CertPathTest.java
@@ -22,6 +22,7 @@
 
 package tests.security.cert;
 
+import dalvik.annotation.KnownFailure;
 import dalvik.annotation.TestLevel;
 import dalvik.annotation.TestTargetClass;
 import dalvik.annotation.TestTargetNew;
@@ -342,6 +343,7 @@
         )
     })
     // Test passed on RI
+    @KnownFailure(value="expired certificate bug 2322662")
     public void testSerializationSelf() throws Exception {
         TestUtils.initCertPathSSCertChain();
         CertPath certPath = TestUtils.buildCertPathSSCertChain();
@@ -373,6 +375,7 @@
         )
     })
     // Test passed on RI
+    @KnownFailure(value="expired certificate bug 2322662")
     public void testSerializationCompatibility() throws Exception {
         TestUtils.initCertPathSSCertChain();
         CertPath certPath = TestUtils.buildCertPathSSCertChain();
