FS#38061 - [deluge] Does not run on i686/illegal hardware instruction (core dumped)

Attached to Project: Arch Linux
Opened by John (graysky) - Sunday, 08 December 2013, 15:00 GMT
Last edited by Bartłomiej Piotrowski (Barthalion) - Wednesday, 18 December 2013, 20:09 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Sven-Hendrik Haase (Svenstaro)
Bartłomiej Piotrowski (Barthalion)
Architecture All
Severity Critical
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Upon pulling down a system update, deluged refuses to start giving only the cryptic message, "illegal hardware instruction (core dumped)." This is only true on i686 - x86_64 works as expected. I can find no further help in the form of debug info. Downgrading the following three packages solves the problem:
[2013-12-08 09:51] [PACMAN] Running 'pacman -U /var/cache/pacman/pkg/deluge-1.3.6-2-any.pkg.tar.xz'
[2013-12-08 09:51] [PACMAN] downgraded deluge (1.3.6-3 -> 1.3.6-2)
[2013-12-08 09:52] [PACMAN] Running 'pacman -U /var/cache/pacman/pkg/libtorrent-rasterbar-1:0.16.12-1-i686.pkg.tar.xz'
[2013-12-08 09:52] [PACMAN] downgraded libtorrent-rasterbar (1:0.16.12-2 -> 1:0.16.12-1)
[2013-12-08 09:52] [PACMAN] Running 'pacman -U /var/cache/pacman/pkg/boost-libs-1.54.0-4-i686.pkg.tar.xz'
[2013-12-08 09:52] [PACMAN] downgraded boost-libs (1.55.0-2 -> 1.54.0-4)

Steps to reproduce:
Attempt to start /usr/bin/deluged -d on an i686 machine. You will need to throw in the -d flag to see the error or else it just quits silently.
This task depends upon

Closed by  Bartłomiej Piotrowski (Barthalion)
Wednesday, 18 December 2013, 20:09 GMT
Reason for closing:  Fixed
Comment by John (graysky) - Tuesday, 10 December 2013, 20:17 GMT
Can anyone on i686 confirm this?
Comment by patrick (potomac) - Wednesday, 11 December 2013, 22:23 GMT
I tried in a virtual machine ( virtualbox, archlinux i686 guest on a archlinux 64 bits host ), no problems for running deluge and deluged,

what kind of cpu do you have ?
Comment by John (graysky) - Thursday, 12 December 2013, 12:14 GMT
patrick - The CPU is an AMD Athlon(TM) XP 2100+ ... I too cannot reproduce in an i686 virtualbox. I was however able to reproduce on another authentic CPU, this time a slightly more powerful AMD Athlon(tm) XP 3200+. Again, both machines cannot run the deluge version noted above. Both machines end in a core dump, so this is real, confirmed on two different machines.

% deluged -d
[1] 704 illegal hardware instruction (core dumped)
Comment by John (graysky) - Thursday, 12 December 2013, 23:19 GMT
Can someone change this bug to the boost-libs package or do I need to open a new report? Rationale: if I look at the difference between 1.3.6-2 and 1.3.6-3 it seems to be the patch to fix twisted. If I remove that patch and rebuild this package, I still get the core dump. Since libtorrent-rasterbar was bumped from 1:0.16.12-1 to 1:0.16.12-2 based on the boost rebuilt, I am concluding that the core dump is not due to deluge or to libtorrent-rasterbar but to the boost-libs 1.54 --> 1.55.

EDIT: opened a ticket upstream, https://svn.boost.org/trac/boost/ticket/9491
Comment by Sven-Hendrik Haase (Svenstaro) - Wednesday, 18 December 2013, 02:46 GMT
Please test boost-1.55.0-3 from [testing]. If you don't run [testing], you may just grab boost-libs from there and test directly.
Comment by John (graysky) - Wednesday, 18 December 2013, 19:51 GMT
Sven - Yes, this fixed it, thanks! Was the problem the --with-toolset=clang stuff?
Comment by Bartłomiej Piotrowski (Barthalion) - Wednesday, 18 December 2013, 20:08 GMT
No, but switching back to gcc and enforcing our C{,XX}FLAGS has some other advantages. I've compiled boost for i686 with SSE2, what caused the issues on 32-bit processors without those instructions. Fortunately Sven fixed it. Closing.

Loading...