|
Message-ID: <20230214120515.GT4163@brightrain.aerifal.cx> Date: Tue, 14 Feb 2023 07:05:15 -0500 From: Rich Felker <dalias@...c.org> To: 兔子猪 <3264430019@...com> Cc: musl <musl@...ts.openwall.com> Subject: Re: [PATCH]fix tsd's issue On Tue, Feb 14, 2023 at 03:25:23PM +0800, 兔子猪 wrote: > Currently, I am trying to port jemalloc to musl, I have found a issue "the return value of pthread_getspecific is not correct". The reasons are as follows: > 1, Jemalloc uses pthread_key_t to implement cache feature, if codes call malloc, pthread_create_key will called and tsd will be initizlized. > 2, Musl calls malloc before updating TLS size in dl stage 3. > 3, New created initial_tls doesn't carry builtin_tls's tsd. > > > The attached patch could fix this issue, please review it, thanks. An interposed malloc being reachable before the crt1 entry point is a bug that needs to be fixed. This is a context where it's not valid to call any application-provided code. Where does the call happen from? dynlink.c itself uses the internal malloc but I guess there's somewhere the interposable malloc is getting called indirectly from. Rich
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.