Bug#995987: python3.10: Please build with -DWITH_PYMALLOC_RADIX_TREE=0 on ia64
John Paul Adrian Glaubitz <[email protected]>
| Newsgroups | gmane.linux.debian.ports.ia64 |
|---|---|
| Message-ID | <163378276794.1551466.6569388388492089734.reportbug__28857.3742190906$1633785336$gmane$org@nofan.physik.fu-berlin.de> |
Source: python3.10 Severity: normal User: [email protected] Usertags: ia64 X-Debbugs-Cc: [email protected] Hi! Python 3.10 introduced a new memory allocator which is not compatible with 64-bit systems with large virtual address spaces at the moment because it assumes address spaces to be limited to 48 bits [1]. This causes the Python interpretor to segfault on ia64. This problem can be avoided by building with -DWITH_PYMALLOC_RADIX_TREE=0. For me, the following change to debian/rules was sufficient: --- debian/rules.orig 2021-10-08 12:10:19.000000000 +0000 +++ debian/rules 2021-10-09 12:04:40.362349542 +0000 @@ -179,6 +179,7 @@ # on ia64, disable -O3 until gcc bug #85412 is fixed ifeq ($(DEB_HOST_ARCH),ia64) EXTRA_OPT_CFLAGS += -O2 + DPKG_CPPFLAGS += -DWITH_PYMALLOC_RADIX_TREE=0 endif # see #972202, and https://gcc.gnu.org/PR97431 ifneq (,$(filter $(DEB_HOST_ARCH), hppa sh4)) FWIW, I think we can even drop the "EXTRA_OPT_CFLAGS += -O2" again as I could build cpython from git without overriding the optimization level on the ia64 porterbox. Thanks, Adrian > [1] https://github.com/python/cpython/pull/14474 -- .''`. John Paul Adrian Glaubitz : :' : Debian Developer - [email protected] `. `' Freie Universitaet Berlin - [email protected] `- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
python-ia64-disable-radix-tree.diff
(text/plain, 397 B)
--- debian/rules.orig 2021-10-08 12:10:19.000000000 +0000
+++ debian/rules 2021-10-09 12:04:40.362349542 +0000
@@ -179,6 +179,7 @@
# on ia64, disable -O3 until gcc bug #85412 is fixed
ifeq ($(DEB_HOST_ARCH),ia64)
EXTRA_OPT_CFLAGS += -O2
+ DPKG_CPPFLAGS += -DWITH_PYMALLOC_RADIX_TREE=0
endif
# see #972202, and https://gcc.gnu.org/PR97431
ifneq (,$(filter $(DEB_HOST_ARCH), hppa sh4))