After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 795244 - openssl: re-enable poly1305 optimization assembly for arm
openssl: re-enable poly1305 optimization assembly for arm
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: cerbero
git master
Other Linux
: Normal normal
: git master
Assigned To: Jan Schmidt
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2018-04-13 23:27 UTC by Rahul Chaudhry
Modified: 2018-05-05 14:11 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
patch to openssl for avoiding conditional branch to PLT in THUMB-2 (1.34 KB, patch)
2018-04-13 23:27 UTC, Rahul Chaudhry
none Details | Review

Description Rahul Chaudhry 2018-04-13 23:27:20 UTC
Created attachment 370917 [details] [review]
patch to openssl for avoiding conditional branch to PLT in THUMB-2

crypto/poly1305 asm optimizations are disabled for openssl (see https://bugzilla.gnome.org/show_bug.cgi?id=759737#c8).

See https://github.com/android-ndk/ndk/issues/337 for background.

The commit to disable the optimizations is https://github.com/freedesktop/gstreamer-cerbero/commit/099710ad63c78468a7f3beb5fe0b403cc8804d32

I've sent a pull-request to upstream openssl that should resolve the linker issue (conditional branch to PLT in THUMB-2).
The pull request is here: https://github.com/openssl/openssl/pull/5949 (also attached with this bug).

Once this patch makes it into the copy of openssl used in gstreamer build, assembly optimizations can be re-enabled.
Comment 1 Rahul Chaudhry 2018-04-20 18:55:16 UTC
The patch has been merged upstream as commit 5bb1cd2292b388263a0cc05392bb99141212aa53: https://github.com/openssl/openssl/commit/5bb1cd2292b388263a0cc05392bb99141212aa53
Comment 2 Jan Schmidt 2018-05-05 14:11:59 UTC
Thanks, applied in cerbero:

commit 4f5607147dc17af7f62d53cf9e750c43bfa9526b (HEAD -> master, origin/master, origin/HEAD)
Author: Jan Schmidt <jan@centricular.com>
Date:   Sat May 5 18:24:41 2018 +1000

    openssl: Reenable poly1305 custom armv4 assembly
    
    Fix the THUMB-2 linkage and reenable the asm section.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=795244