Github messages for voidlinux
 help / color / mirror / Atom feed
From: classabbyamp <classabbyamp@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [ISSUE] [CLOSED] Direwolf on Rpi Zero W fails to run due to missing NEON support.
Date: Sun, 21 Jan 2024 21:18:08 +0100	[thread overview]
Message-ID: <20240121201808.7147D221E6@inbox.vuxu.org> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-48299@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 2957 bytes --]

Closed issue by CtrlC-Root on void-packages repository

https://github.com/void-linux/void-packages/issues/48299

Description:
### Is this a new report?

Yes

### System Info

Void 6.1.69_1 armv6l Unknown uptodate rFF

### Package(s) Affected

direwolf-1.7_1

### Does a report exist for this bug with the project's home (upstream) and/or another distro?

https://github.com/RPi-Distro/repo/issues/278
https://bugs.launchpad.net/raspbian/+bug/1980899
https://groups.io/g/direwolf/topic/87406630#5856

### Expected behaviour

You should be able to run the binaries in the `direwolf` package on supported ARM boards as per the Void Handbook including the Raspberry Pi Zero W.

### Actual behaviour

The `direwolf` binary crashes with an `Illegal instruction` as seen below:

```
[root@void-live ~]# direwolf
Dire Wolf version 1.7
Includes optional support for:  hamlib cm108-ptt

Dire Wolf requires only privileges available to ordinary users.                                                                                                                              
Running this as root is an unnecessary security risk.

Illegal instruction
[root@void-live ~]#
```

I've done some digging and it appears this is likely because it's compiled on an ARM system that has the NEON instruction set whereas the Raspberry Pi Zero W does not support this.

```
[root@void-live ~]# readelf -A /usr/bin/direwolf | grep NEON
  Tag_Advanced_SIMD_arch: NEONv1
[root@void-live ~]# lscpu
Architecture:           armv6l
  Byte Order:           Little Endian
CPU(s):                 1
  On-line CPU(s) list:  0
Vendor ID:              ARM
  Model name:           ARM1176
    Model:              7
    Thread(s) per core: 1
    Core(s) per socket: 1
    Socket(s):          1
    Stepping:           r0p7
    CPU(s) scaling MHz: 100%
    CPU max MHz:        1000.0000
    CPU min MHz:        700.0000
    BogoMIPS:           997.08
    Flags:              half thumb fastmult vfp edsp java tls
```

Of course just because the binary contains NEON instructions does not necessarily mean it's executing them but I suspect this is the issue given the linked bug reports above. I am currently attempting to build this package from source on the board to see if that solves it but that's going to take a while.

### Steps to reproduce

1. Follow the Void Handbook instructions to download an ARMv6l image (I used `void-rpi-armv6l-20230628.img`) and prepare a microSD card using it.
2. Boot the image on an ARMv6l board without support for NEON instructions (I used a Raspberry Pi Zero W).
3. Install the direwolf package: `xbps-install direwolf`
4. Run the `direwolf` binary in a way where it attempts to actually process data: `direwolf -c /usr/share/doc/direwolf/conf/direwolf.conf`
5. Observe the crash documented above in the `Actual behavior` section.

Tagging @classabbyamp as the package maintainer.

      parent reply	other threads:[~2024-01-21 20:18 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-20 15:03 [ISSUE] " CtrlC-Root
2024-01-20 16:39 ` classabbyamp
2024-01-20 16:39 ` [ISSUE] [CLOSED] " classabbyamp
2024-01-20 20:38 ` CtrlC-Root
2024-01-21 20:18 ` classabbyamp [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240121201808.7147D221E6@inbox.vuxu.org \
    --to=classabbyamp@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).