After a lot of sleuthing with gdb, I'm pretty confident this is the
source of (and fix for) the crash we are seeing with libssl1.1:arm64
1.1.1f-1ubuntu2.10:

https://github.com/openssl/openssl/commit/fcf6e9d056162d5af64c6f7209388a5c3be2ce57

It's a bug fix for some pointer authentication assembly instructions for
the Poly1305 arm64 assembly code. These instructions only execute (and
crash) on Arm v8.3 64 bit processors - they NOOP on other processors
that don't understand them.

Note, I have no idea why that code would not also be a problem and crash
under valgrind, but I've definitely narrowed this particular crash
outside of valgrind down to that location. Maybe it disables pointer
authentication....?

It appears the commit above was landed in OpenSSL 1.1.1i:

https://github.com/openssl/openssl/blob/OpenSSL_1_1_1i/crypto/poly1305/asm/poly1305-armv8.pl

Bottom line, in order to prevent crashes on Arm v8.3 processors I
believe addressing this requires an upgrade of libssl1.1 to OpenSSL
1.1.1i.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1951279

Title:
  OpenSSL 1.1.1f raise a segmentation faults on Arm64 builds

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/openssl/+bug/1951279/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to