[Bug 263845] graphics/libglvnd: Library compiled in ARM mode, but executes in Thumb mode, crashing programs on FreeBSD 13 armv7 with SIGILL

[email protected]
Newsgroups gmane.os.freebsd.devel.x11
Message-ID <[email protected]/bugzilla/>
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=263845

Robert Clausecker <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
 Attachment #234353|maintainer-approval?(x11@Fr |
              Flags|eeBSD.org)                  |
 Attachment #234353|0                           |1
        is obsolete|                            |
 Attachment #234421|                            |maintainer-approval?
              Flags|                            |

--- Comment #7 from Robert Clausecker <[email protected]> ---
Created attachment 234421
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=234421&action=edit
graphics/libglvnd: fix on armv6/armv7

The .thumb_func directive does not switch to thumb mode in clang's
integrated assembler.  This causes the code to be miscompiled in that
it is generated as ARM code but the symbols are tagged as thumb.  The
resulting library is unusable.  Every call into it crashes.

Fix this issue by applying an upstream patch set to have the entry
stubs be in ARM mode instead of Thumb mode.

See also:      
https://gitlab.freedesktop.org/glvnd/libglvnd/-/merge_requests/267
See also:       https://gitlab.freedesktop.org/glvnd/libglvnd/-/issues/232
PR:             263845

Tested with Poudriere on armv7 arm64 FreeBSD 13.
Portlint likes the port.

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are on the CC list for the bug.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.