[OpenWrt-Devel] Alsa-lib (libasound) segfaults on TLS variable (musl on mips)

Szabolcs Nagy nsz at port70.net
Wed Jun 24 19:08:48 EDT 2015


* Szabolcs Nagy <nsz at port70.net> [2015-06-24 22:57:54 +0200]:
> the bug is that mips tls access uses a hard coded -32768
> offset relative to whatever __tls_get_addr returned.
> 
> and musl did not account for this offset.
> 

only affects mips shared objects with 'static __thread' variables,

extern __thread variables worked fine (and only those were
tested in the libc-tests).

> the attached patch fixes the issue for me,
> we will fix it in musl soon.

better patch attached that undoes the offset for extern tls
vars in relocs handling.. (and with more consistent naming)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: mips_tls_fix_2.diff
Type: text/x-diff
Size: 1678 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/openwrt-devel/attachments/20150625/ff64b6da/attachment.bin>
-------------- next part --------------
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list