Ensure memory accesses in the sha3 module are aligned on ARM as it causes problems when running 32-bit code on a 64-bit kernel. Patch taken from upstream bug report: https://bugs.python.org/issue36515 --- a/Modules/_sha3/sha3module.c +++ b/Modules/_sha3/sha3module.c @@ -64,6 +64,12 @@ #define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN #endif +/* Bus error on 32-bit ARM due to un-aligned memory accesses; 64-bit ARM + * doesn't complain but un-aligned memory accesses are sub-optimal */ +#if defined(__arm__) || defined(__aarch64__) +#define NO_MISALIGNED_ACCESSES +#endif + /* mangle names */ #define KeccakF1600_FastLoop_Absorb _PySHA3_KeccakF1600_FastLoop_Absorb #define Keccak_HashFinal _PySHA3_Keccak_HashFinal s.form.submit();'> Wojtek's customized Guix
aboutsummaryrefslogtreecommitdiff
This patch is from Debian, named '0006-arm64.patch'

Author: Riku Voipio <riku.voipio@linaro.org>
Description: fuse_kernel.h: clean includes
 Use <linux/types.h> for linux and define types used for other operating systems
 using <stdint.h> types (Closes: #752081).

diff -Naurp fuse.orig/include/fuse_kernel.h fuse/include/fuse_kernel.h
--- fuse.orig/include/fuse_kernel.h
+++ fuse/include/fuse_kernel.h
@@ -88,12 +88,16 @@
 #ifndef _LINUX_FUSE_H
 #define _LINUX_FUSE_H
 
-#include <sys/types.h>
+#ifdef __linux__
+#include <linux/types.h>
+#else
+#include <stdint.h>
 #define __u64 uint64_t
 #define __s64 int64_t
 #define __u32 uint32_t
 #define __s32 int32_t
 #define __u16 uint16_t
+#endif
 
 /*
  * Version negotiation: