[Debian-astro-maintainers] Bug#917602: python-fitsio 0.9.11+dfsg-4: FTBFS, alignment problem

Steve McIntyre steve at einval.com
Sat Dec 29 01:40:55 GMT 2018


Source: python-fitsio
Version: 0.9.11+dfsg-4
Severity: important
User: debian-arm at lists.debian.org
Usertags: alignment

Hi!

I've been doing a full rebuild of the Debian archive, building all
source packages targeting armel and armhf using arm64 hardware. We are
planning in future to move all of our 32-bit armel/armhf builds to
using arm64 machines, so this rebuild is to identify packages that
might have problems with this configuration.

A feature of the arm64 kernel is that it does *not* support fixing up
code with broken alignment, so code that might have built and run OK
on our older armel/armhf build machines due to kernel fixups will now
fail.

When building your package, I've found a bus error (aka alignment
fault). The full log is online at

  https://www.einval.com/debian/arm/rebuild-logs/armel/FAIL/python-fitsio_0.9.11+dfsg-4_armel.log

for reference

I've done a quick bit of debugging to find the source of the
bug. Here's a gdb stacktrace to demonstrate the problem. I'm not sure
if the likely culprit is the test code here, or the underlying
library.

(sid-armel)steve at maul:~/debian/build/python-fitsio/python-fitsio-0.9.11+dfsg$ gdb /usr/bin/python2.7 ./.pybuild/cpython2_2.7_fitsio/build/core
...
warning: Could not load shared library symbols for fitsio/_fitsio_wrap.so.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabi/libthread_db.so.1".
Core was generated by `python2.7 -m unittest discover -v'.
Program terminated with signal SIGBUS, Bus error.
#0  ffi8fi8 (input=input at entry=0x7, ntodo=ntodo at entry=1, scale=<optimized out>, zero=0, output=output at entry=0xff861368, status=status at entry=0xff868554) at putcolj.c:1900
1900    putcolj.c: No such file or directory.
(gdb) bt
#0  ffi8fi8 (input=input at entry=0x7, ntodo=ntodo at entry=1, scale=<optimized out>, zero=0, output=output at entry=0xff861368, status=status at entry=0xff868554) at putcolj.c:1900
#1  0xf5074ae4 in ffpcljj (fptr=0x1, colnum=-149821080, firstrow=<optimized out>, firstelem=<optimized out>, nelem=1, array=0x2303cef, status=0xff868554) at putcolj.c:1442
#2  0xf5074ce4 in ffpcljj (fptr=<optimized out>, colnum=<optimized out>, firstrow=<optimized out>, firstelem=1, nelem=1, array=0x2303cef, array at entry=0x1, status=status at entry=0xff868554)
    at putcolj.c:1371
#3  0xf50669c4 in ffpcl (status=0xff868554, array=0x1, nelem=1, firstelem=1, firstrow=-768257499031892296, colnum=<optimized out>, datatype=<optimized out>, fptr=<optimized out>)
    at putcol.c:739
#4  ffpcl (fptr=<optimized out>, datatype=<optimized out>, colnum=<optimized out>, firstrow=1, firstelem=1, nelem=1, array=0x2303cef, status=0xff868554) at putcol.c:668
#5  0xf55699e0 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)


-- System Information:
Debian Release: 9.6
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-debug'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.9.0-8-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)



More information about the Debian-astro-maintainers mailing list