Package: libselinux Version: 1.30.26-2 Severity: grave Tags: upstream libselinux1 currently fails to build on arm, m68k, hppa and mips* because the version of gcc/binutils currently in etch does not support TLS. This is keeping udev, cron and other important packages out from testing.
From #selinux: <Md> does the latest libselinux *really* depend on TLS? now it's broken on mips*, arm, m68k and hppa [...] <PeBenito|work> looks like that has been in there since june 26 <dwalsh> Should be ifdef'd around I guess <PeBenito|work> dwalsh: why are those needed? <Md> dwalsh: can you confirm that __thread can be safely removed on architectures not supporting TLS? <dwalsh> myflags was needed as a global to maintain flags over multiple calls of matchpatchon functions as I recall. <Md> also four prev_t2r_* variables in setrans_client.c <dwalsh> They are not thread safe, so making it __threads made them thread local variables. <dwalsh> Do these other platforms have the concept of thread local variable or do you need to wrap them in semaphores? <Md> is this an implementation detail which changed or did it fix a bug which has always been present? <dwalsh> They were done to speed things up. <Md> dwalsh: at least some have it in trunk gcc/binutils, but it will not be available in time for the next debian release, which is half frozen <PeBenito|work> if its not safe w/o TLS, and not all archs have TLS, it seems like the design needs to be rethought :x <dwalsh> As I recall in translations, if you translate the same context over and over again for example ls -lZ /etc you can save lots of processing <Md> (does anybody mind if I will attach this log to the debian bug report?) <PeBenito|work> Md: this is a public channel <PeBenito|work> Md: you should still send an email to the selinux list, referencing the bug -- ciao, Marco
signature.asc
Description: Digital signature