|
Message-ID: <20150620000848.GA25871@brightrain.aerifal.cx> Date: Fri, 19 Jun 2015 20:08:48 -0400 From: Rich Felker <dalias@...c.org> To: musl@...ts.openwall.com Subject: sh port of musl possibly broken due to toolchain and kernel issues Due to the following issue which I reported to both GCC and binutils: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66609 https://sourceware.org/bugzilla/show_bug.cgi?id=18561 most builds of musl for sh probably have subtle breakage due to incorrect binding of local weak definitions of symbols instead of correctly resolving the strong definition. At least cancellable syscalls were observed to be broken (non-cancellable), but other functionality may be affected too. A workaround is to build with -m1 (sh1 codegen) since sh1 lacks the instructions that the buggy relocation type would be used with, but this only works for nofpu targets (sh2/3 or sh4-nofpu). The kernel issue I reported ("SH sigcontext ABI is broken" thread) with sigcontext also affects everything no-fpu (pre-sh4). Due to mismatched layout of mcontext_t and ucontext_t depending on the hardware (not tied to userspace ABI like it would need to be), attempting to use pthread_cancel on nofpu kernels will potentially corrupt the target thread's stack and will throw it into an infinite loop. I'm working on getting them all fixed. 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.