On Wed, Jan 4, 2017, at 17:04, Ian Jackson wrote: > amd64 with TSX is for the purposes of pthreads like a new > architecture: the locking primitives behave differently and expose > extra bugs.
Also valid for S/390x, POWER, and anything else where glibc 2.24 supports hardware lock elision. > These extra bugs will be discovered only by chance (as we see in that > bug report and in the earlier bugs #843324 and maybe #842796). As > more TSX-capable hardware becomes available, we will discover more of > them, during the life of stretch, when they are hard to fix. > > Also, we don't have the capability to debug them. I don't think we > can have a release architecture for stretch that has no porterboxes. All it takes is an extra "if(unlikely(lock-is-unlocked)) raise(SIGSEGV);" line on the libpthread unlock path for no-lock-elision). Or you could generate a warning instead. That said, I am not speaking against disabling hardware lock elision acceleration for Debian Stretch. We might be better off disabling it. -- Henrique de Moraes Holschuh <h...@debian.org>