blob: 23d4923d23b5afbfc81603639480cfb2c56f5a6d [file] [log] [blame]
Brad Bishopd7bf8c12018-02-25 22:55:05 -05001imported from debian
2
3Upstream-Status: Pending
4Index: git/src/third_party/wiredtiger/SConscript
5===================================================================
6--- git.orig/src/third_party/wiredtiger/SConscript
7+++ git/src/third_party/wiredtiger/SConscript
Brad Bishop1a4b7ee2018-12-16 17:11:34 -08008@@ -181,7 +181,9 @@ if useSnappy:
Brad Bishopd7bf8c12018-02-25 22:55:05 -05009 # If not available at runtime, we fall back to software in some cases.
10 #
11 # On zSeries we may disable because SLES 11 kernel doe not support the instructions.
12-if not (env['TARGET_ARCH'] == 's390x' and get_option("use-s390x-crc32") == "off"):
13+# Debian: disable hardware-assisted crc32 on s390x and arm64, as at least the
14+# buildd's do not support the instructions.
15+if env['TARGET_ARCH'] not in ('s390x', 'arm64', 'aarch64'):
16 env.Append(CPPDEFINES=["HAVE_CRC32_HARDWARE"])
17
18 wtlib = env.Library(
19Index: git/src/third_party/wiredtiger/dist/filelist
20===================================================================
21--- git.orig/src/third_party/wiredtiger/dist/filelist
22+++ git/src/third_party/wiredtiger/dist/filelist
23@@ -54,7 +54,6 @@ src/checksum/power8/crc32_wrapper.c POWE
24 src/checksum/software/checksum.c
25 src/checksum/x86/crc32-x86.c X86_HOST
26 src/checksum/zseries/crc32-s390x.c ZSERIES_HOST
27-src/checksum/zseries/crc32le-vx.sx ZSERIES_HOST
28 src/config/config.c
29 src/config/config_api.c
30 src/config/config_check.c
31Index: git/src/third_party/wiredtiger/src/checksum/zseries/crc32-s390x.c
32===================================================================
33--- git.orig/src/third_party/wiredtiger/src/checksum/zseries/crc32-s390x.c
34+++ git/src/third_party/wiredtiger/src/checksum/zseries/crc32-s390x.c
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080035@@ -77,6 +77,7 @@ unsigned int __wt_crc32c_le(unsigned int
Brad Bishopd7bf8c12018-02-25 22:55:05 -050036 return crc; \
37 }
38
39+#if defined(HAVE_CRC32_HARDWARE)
40 /* Main CRC-32 functions */
41 DEFINE_CRC32_VX(__wt_crc32c_le_vx, __wt_crc32c_le_vgfm_16, __wt_crc32c_le)
42
Brad Bishop1a4b7ee2018-12-16 17:11:34 -080043@@ -89,6 +90,7 @@ __wt_checksum_hw(const void *chunk, size
Brad Bishopd7bf8c12018-02-25 22:55:05 -050044 {
45 return (~__wt_crc32c_le_vx(0xffffffff, chunk, len));
46 }
47+#endif
48
49 #endif
50