-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Closed
Description
I'm trying to install Jellyfin on a fresh install of Debian Bookworm armhf on a Marvel Armada processor.
$ uname -a
Linux hostname 6.1.0-25-armmp #1 SMP Debian 6.1.106-3 (2024-08-26) armv7l GNU/Linux
$ cat /proc/cpuinfo
processor : 0
model name : ARMv7 Processor rev 1 (v7l)
BogoMIPS : 41.55
Features : half thumb fastmult vfp edsp thumbee vfpv3 vfpv3d16 tls idivt
CPU implementer : 0x56
CPU architecture: 7
CPU variant : 0x1
CPU part : 0x581
CPU revision : 1
Hardware : Marvell Armada 370/XP (Device Tree)
Revision : 0000
Serial : 0000000000000000
Starting the program fails with an Illegal Instruction. Digging into the build process, it appears that even a simple dotnet --info fails when installed as wget -O- https://dot.net/v1/dotnet-install.sh | bash /dev/stdin --channel 8.0 --install-dir /usr/local/bin.
Checking the coredump reveals that the offending instruction is in libhostfxr.so, but no further info.
# gdb dotnet core
GNU gdb (Debian 13.1-3) 13.1
Copyright (C) 2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "arm-linux-gnueabihf".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from dotnet...
(No debugging symbols found in dotnet)
[New LWP 393]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
Core was generated by `dotnet --info'.
Program terminated with signal SIGILL, Illegal instruction.
#0 0xb6c86bd8 in ?? () from /usr/local/bin/host/fxr/8.0.10/libhostfxr.so
(gdb) disass
No function contains program counter for selected frame.
(gdb) where
#0 0xb6c86bd8 in ?? () from /usr/local/bin/host/fxr/8.0.10/libhostfxr.so
#1 0xb6c86bd0 in ?? () from /usr/local/bin/host/fxr/8.0.10/libhostfxr.so
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
A Marvell Armada is not the most common ARMv7-a configuration, since it lacks vfpv4 support, but #9969 seems to indicat that vfpv3 should be enough. Besides, the shared library seems to be compiled with vfpv3.
# readelf -A /usr/local/bin/host/fxr/8.0.10/libhostfxr.so
Attribute Section: aeabi
File Attributes
Tag_CPU_name: "7-A"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_FP_arch: VFPv3-D16
Tag_ABI_align_needed: 8-byte
Tag_ABI_align_preserved: 8-byte, except leaf SP
Tag_ABI_HardFP_use: Deprecated
Tag_ABI_VFP_args: VFP registers
Anyone knows what could be going on?