[gnutls-help] Problem with gnutls running inside parallels on an imac (illegal instruction)

Ondřej Surý ondrej at sury.org
Tue Oct 11 15:31:23 CEST 2022


Hi,

this usually happens when the guest binaries are compiled with cpu instruction set that’s not supported by host (I’ve seen this too many times when Raspbian decided it’s a “good idea” to make armhf different from Debian’s armhf and people would mix the two). Recompiling the package is not going to help because that would use the same compiler flags. You can try looking into debian/rules and tweak any extra setting, or compile the gnutls from source (without any Debian modifications or custom ./configure options).

Cheers, 
--
Ondřej Surý <ondrej at sury.org> (He/Him)

> On 11. 10. 2022, at 15:12, Gunnar Stahl <gunnar.stahl at gunnarstahl.org> wrote:
> 
> Hello list,
> 
> I have a problem with running debian inside parallels on an iMac 2019 (i5 8500, 64gb ram). Debian actually runs fine, but downloading lineageos via the repo command fails and it seems it is due to gnutls.
> 
> When I tried to download lineageos via the repo command
>>> repo init -u https://github.com/LineageOS/android.git -b lineage-19.1
> the command failed with an 'git was killed with signal 4' error.
> 
> I narrowed it down to git trying to clone from an http**s** source, which I think utilizes openssl. The command 
>>> git clone 'https://gerrit.googlesource.com/git-repo' 
> dies with the error message 'git-remote-https died of signal 4‘. 
> 
> When I try to do the same with 
>>> wget https://gerrit.googlesource.com/git-repo
> 
> I receive the error 'Illegal instruction'.
> 
> Initially I thought this was a problem with openssl and asked the openssl dev mailing list. 
> They pointed me to producing a coredump. So I did:
> 
> # ulimit -c unlimeted
> # sudo sysctl -w kernel.core_uses_pid=1
> 
> and reproduced the error with
> 
> # wget https://gerrit.googlesource.com/git-repo
> 
> which produced a core dump file which I opened via
> 
> # gdb wget core.252637
> 
> and that stated:
> 
> ###
> Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
> Core was generated by `wget https://gerrit.googlesource.com/git-repo'.
> Program terminated with signal SIGILL, Illegal instruction.
> #0  0x00007f3a9594fb0a in ?? () from /lib/x86_64-linux-gnu/libgnutls.so.30
> ###
> 
> So it seems that it isn’t openssl causing the problem but gnutls. I therefore tried to apt source —compile libgnutls and that fails in the test phase with lots of lines like:
> 
> ###
> make[6]: Entering directory '/home/gunnarstahl/build-libgnutls/gnutls28-3.7.7/b4deb/tests'
> ../../build-aux/test-driver: line 112: 361413 Illegal instruction     "$@" >> "$log_file" 2>&1
> FAIL: tls13/supported_versions
> ../../build-aux/test-driver: line 112: 361411 Illegal instruction     "$@" >> "$log_file" 2>&1
> ../../build-aux/test-driver: line 112: 361412 Illegal instruction     "$@" >> "$log_file" 2>&1
> FAIL: tls13/tls12-no-tls13-exts
> FAIL: tls13/post-handshake-with-cert
> FAIL: sanity-cpp
> ../../build-aux/test-driver: line 112: 361441 Illegal instruction     "$@" >> "$log_file" 2>&1
> ###
> 
> Anything I can do here apart from switching to native hardware? Some compiler switches or anything? Any help is appreciated. I’ll happily provide the necessary log files.
> 
> _______________________________________________
> Gnutls-help mailing list
> Gnutls-help at lists.gnutls.org
> http://lists.gnupg.org/mailman/listinfo/gnutls-help
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.gnupg.org/pipermail/gnutls-help/attachments/20221011/15e610f1/attachment-0001.html>


More information about the Gnutls-help mailing list