FS#72963 - [monero-gui] illegal hardware instruction

Attached to Project: Community Packages
Opened by Konrad (Morelcia) - Thursday, 09 December 2021, 17:56 GMT
Last edited by kpcyrd (kpcyrd) - Wednesday, 15 December 2021, 09:23 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To kpcyrd (kpcyrd)
Architecture x86_64
Severity Medium
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description: monero-wallet-gui doesn't start, it's probably built for newer arch than my CPU (I have Intel Ivy Bridge).
zsh: illegal hardware instruction (core dumped) monero-wallet-gui
it's all that shows for me.

Additional info:
* package version(s):
* config and/or log files etc.: none
* link to upstream bug report, if any: might be related https://github.com/monero-project/monero-gui/issues/3782
I feel like these commits might be the culprit and package probably builds with instructions supported only on CPUs same or newer than on those that built this package https://github.com/monero-project/monero-gui/commit/61d8b5efb6068e88687b9da1c23828cd8f382168#diff-76ed074a9305c04054cdebb9e9aad2d818052b07091de1f20cad0bbac34ffb52
https://github.com/monero-project/monero-gui/commit/4ec78b35f8bba7edb6eb5bbcf473850c18fe44d1
https://github.com/monero-project/monero-gui/commit/f8e1b9bdb6738b64af6f6e263632c751876f4fca

Steps to reproduce:
1. Just try to start monero-wallet-gui.
This task depends upon

Closed by  kpcyrd (kpcyrd)
Wednesday, 15 December 2021, 09:23 GMT
Reason for closing:  Fixed
Additional comments about closing:  0.17.3.0-2
Comment by Konrad (Morelcia) - Thursday, 09 December 2021, 18:23 GMT
I've forgot to include package version, it's 0.17.3.0-1 so the latest one.
Comment by Anonymous (reallybmn) - Sunday, 12 December 2021, 23:26 GMT
The exact instruction which causes the issue is VPBROADCASTQ, which requires AVX2 support from CPU.

Reproducing (crash dump inspection):
1. Run: ulimit -c unlimited
2. Run: sudo sysctl -w kernel.core_uses_pid=1
3. Run: echo 'core' | sudo tee /proc/sys/kernel/core_pattern
4. Execute (run): monero-wallet-gui
5. You'll get the crashdump in file core.XXX in current working directory. Run: gdb $(which monero-wallet-gui) core.*
6. You'll get something like:
"Program terminated with signal SIGILL, Illegal instruction.
#0 0xXXX in ?? ()"
7. Enter the command to GDB: layout asm

And you'll see the aforementioned VPBROADCASTQ.

Loading...