diff --git a/valgrind-3.11.0-z13s.patch b/valgrind-3.11.0-z13s.patch
new file mode 100644
index 0000000..7e7e1c2
--- /dev/null
+++ b/valgrind-3.11.0-z13s.patch
@@ -0,0 +1,56 @@
+commit 3b6e36f530120f5e30d8a81d26e04018a8d0784f
+Author: florian <florian@8f6e269a-dfd6-0310-a8e1-e2731360e62c>
+Date:   Tue Feb 16 21:14:47 2016 +0000
+
+    s390: Add machine model z13s
+    
+    
+    git-svn-id: svn://svn.valgrind.org/vex/trunk@3208 8f6e269a-dfd6-0310-a8e1-e2731360e62c
+
+diff --git a/VEX/pub/libvex.h b/pub/libvex.h
+index b2bd476..4dd23e6 100644
+--- a/VEX/pub/libvex.h
++++ b/VEX/pub/libvex.h
+@@ -141,7 +141,8 @@ typedef
+ #define VEX_S390X_MODEL_ZEC12    10
+ #define VEX_S390X_MODEL_ZBC12    11
+ #define VEX_S390X_MODEL_Z13      12
+-#define VEX_S390X_MODEL_UNKNOWN  13     /* always last in list */
++#define VEX_S390X_MODEL_Z13S     13
++#define VEX_S390X_MODEL_UNKNOWN  14     /* always last in list */
+ #define VEX_S390X_MODEL_MASK     0x3F
+ 
+ #define VEX_HWCAPS_S390X_LDISP (1<<6)   /* Long-displacement facility */
+commit e6d40c0b4d4e8a7007a6f2fc0c2f0aac50aba274
+Author: florian <florian@a5019735-40e9-0310-863c-91ae7b9d1cf9>
+Date:   Tue Feb 16 21:15:32 2016 +0000
+
+    s390: Recognise machine model z13s (2965).
+    
+    
+    git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15789 a5019735-40e9-0310-863c-91ae7b9d1cf9
+
+diff --git a/coregrind/m_machine.c b/coregrind/m_machine.c
+index cd4606b..ae8b929 100644
+--- a/coregrind/m_machine.c
++++ b/coregrind/m_machine.c
+@@ -616,6 +616,7 @@ static UInt VG_(get_machine_model)(void)
+       { "2827", VEX_S390X_MODEL_ZEC12 },
+       { "2828", VEX_S390X_MODEL_ZBC12 },
+       { "2964", VEX_S390X_MODEL_Z13 },
++      { "2965", VEX_S390X_MODEL_Z13S },
+    };
+ 
+    Int    model, n, fh;
+diff --git a/tests/s390x_features.c b/tests/s390x_features.c
+index de34a98..bc671c6 100644
+--- a/tests/s390x_features.c
++++ b/tests/s390x_features.c
+@@ -89,6 +89,7 @@ model_info models[] = {
+    { "2827", "zEC12"  },
+    { "2828", "zBC12"  },
+    { "2964", "z13"    },
++   { "2965", "z13s"   },
+ };
+ 
+ 
diff --git a/valgrind.spec b/valgrind.spec
index 5be137c..76b77e0 100644
--- a/valgrind.spec
+++ b/valgrind.spec
@@ -145,6 +145,9 @@ Patch31: valgrind-3.11.0-ppc64-128bit-mod-carry.patch
 # KDE#212352 - vex amd64 unhandled opc_aux = 0x 2, first_opcode == 0xDC (FCOM)
 Patch32: valgrind-3.11.0-amd64-fcom.patch
 
+# s390: Recognise machine model z13s (2965)
+Patch33: valgrind-3.11.0-z13s.patch
+
 %if %{build_multilib}
 # Ensure glibc{,-devel} is installed for both multilib arches
 BuildRequires: /lib/libc.so.6 /usr/lib/libc.so /lib64/libc.so.6 /usr/lib64/libc.so
@@ -285,6 +288,7 @@ chmod 755 memcheck/tests/arm64-linux/filter_stderr
 %patch30 -p1
 %patch31 -p1
 %patch32 -p1
+%patch33 -p1
 
 %build
 # We need to use the software collection compiler and binutils if available.
@@ -484,6 +488,7 @@ echo ===============END TESTING===============
 - Replace valgrind-3.11.0-arm64-ldpsw.patch with upstream version
 - Add valgrind-3.11.0-ppc64-128bit-mod-carry.patch
 - Add valgrind-3.11.0-amd64-fcom.patch
+- Add valgrind-3.11.0-z13s.patch
 
 * Mon Mar 14 2016 Mark Wielaard <mjw@redhat.com> - 3.11.0-18
 - Update valgrind-3.11.0-libstdc++-supp.patch.