diff --git a/ci/azure.yml b/ci/azure.yml
index c0f22848ae78c860d5763867cd9e806c4d7f9de8..6dd0fcecba3c0d2ccad530e689e97df4de3ca6b5 100644
--- a/ci/azure.yml
+++ b/ci/azure.yml
@@ -70,8 +70,8 @@ jobs:
           TARGET: powerpc64-unknown-linux-gnu
         powerpc64le-unknown-linux-gnu:
           TARGET: powerpc64le-unknown-linux-gnu
-        #s390x-unknown-linux-gnu:
-        #  TARGET: s390x-unknown-linux-gnu
+        s390x-unknown-linux-gnu:
+          TARGET: s390x-unknown-linux-gnu
         #wasm32-wasi
         #  TARGET: wasm32-wasi
         sparc64-unknown-linux-gnu:
diff --git a/ci/linux-s390x.sh b/ci/linux-s390x.sh
index 00a7f88180b7240c92251b19224ff34e2dba650e..18c71f45c606e74bdf3444070cdcd72017cddb5f 100644
--- a/ci/linux-s390x.sh
+++ b/ci/linux-s390x.sh
@@ -6,8 +6,8 @@ mkdir -m 777 /qemu
 cd /qemu
 
 curl --retry 5 -LO https://github.com/qemu/qemu/raw/master/pc-bios/s390-ccw.img
-curl --retry 5 -LO http://ftp.debian.org/debian/dists/testing/main/installer-s390x/20190410/images/generic/kernel.debian
-curl --retry 5 -LO http://ftp.debian.org/debian/dists/testing/main/installer-s390x/20190410/images/generic/initrd.debian
+curl --retry 5 -LO http://ftp.debian.org/debian/dists/testing/main/installer-s390x/20191129/images/generic/kernel.debian
+curl --retry 5 -LO http://ftp.debian.org/debian/dists/testing/main/installer-s390x/20191129/images/generic/initrd.debian
 
 mv kernel.debian kernel
 mv initrd.debian initrd.gz
diff --git a/libc-test/build.rs b/libc-test/build.rs
index 2a0f487166d65852d3fcf183a00b1cff2aad3956..1f7152e42a70d67c8559105fb6e40f299477a7da 100644
--- a/libc-test/build.rs
+++ b/libc-test/build.rs
@@ -2531,6 +2531,8 @@ fn test_linux(target: &str) {
         "utsname" if mips32 || mips64 => true,
         // FIXME:
         "mcontext_t" if s390x => true,
+        // FIXME: This is actually a union.
+        "fpreg_t" if s390x => true,
 
         "sockaddr_un" | "sembuf" | "ff_constant_effect"
             if mips32 && (gnu || musl) =>