[Bug dynamic-link/34533] New: Audit libraries have no way to specify their maximum alignment.

woodard at redhat dot com via Glibc-bugs <[email protected]>
Newsgroups gmane.comp.lib.glibc.bugs
Message-ID <[email protected]/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=34533

            Bug ID: 34533
           Summary: Audit libraries have no way to specify their maximum
                    alignment.
           Product: glibc
           Version: 2.44
            Status: NEW
          Severity: normal
          Priority: P2
         Component: dynamic-link
          Assignee: unassigned at sourceware dot org
          Reporter: woodard at redhat dot com
  Target Milestone: ---

Created attachment 16946
  --> https://sourceware.org/bugzilla/attachment.cgi?id=16946&action=edit
reproducer audit library

If an audit library happens to require TLS alignment larger than the
architecture default then it won't load and there is no way to work around this
with the current glibc. This is a very old problem and exists all the way back
to at least 2.32

Attached is a very simple LD_AUDIT library that demonstrates the problem.
It can be compiled with 
gcc -o libauditalign.so auditalign.c -shared -fPIC

When run ld.so fails to load it:

$ LD_AUDIT=./libauditalign.so /bin/true

ERROR: ld.so: object '/home/ben/Work/Audit/audit-alignment/libauditalign.so'
cannot be loaded as audit interface: cannot allocate memory in static TLS
block; ignored.

We have not been able to figure out any way around this problem.

We think that the best way to handle this is to add a new tunable which allows
us to specify a larger than default alignment.

-- 
You are receiving this mail because:
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.