On 07/11/16 11:39, Jakub Jelinek wrote: > On Mon, Nov 07, 2016 at 11:22:28AM +0300, Maxim Ostapenko wrote: >> this patch set performs libsanitizer merge from upstream. >> >> Patch 1 is the library merge itself. >> >> Patch 2 is the reapplied change for SPARC by David S. Miller. >> >> Patch 3 changes heuristic for extracting last PC from stack frame for ARM in >> fast unwind routine. More details can be found here >> (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61771). >> >> Patch 4 replaces Jakub's fix for >> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63888 and removes >> CheckODRViolationViaPoisoning call from RegisterGlobal to avoid false >> positive odr violation reports. >> >> Patch 5 combines necessary compiler changes. >> >> Patch 6 adds several new tests, backported from upstream. >> >> Patch 7 adds support for ASan odr indicators at compiler side. >> >> The whole patch set was regtested/bootstrapped/ASan bootstrapped on >> x86_64-unknown-linux-gnu and i386-unknown-linux-gnu. >> Also, passed regression tests on arm-linux-gnueabi and aarch64-linux under >> QEMU. > So, libasan.so.* is again ABI incompatible, but libtsan and libubsan stay > (hopefully) backwards ABI compatible? libubsan is definitely compatible. For libtsan we have several changes: 1) Several interceptors (34 of them) were added and __interceptor_lstat{64} were removed. 2) __interceptor_strchr has change in its parameters type: __interceptor_strchr(char*, int) -> __interceptor_strchr(const char*, int) 3) tsan's internal type __tsan::ReportDesc has several changes, but it seems that this doesn't introduce ABI incompatibility with compiler side. Full abidiff listing is attached. So, I suppose libtsan is also compatible. -Maxim > > Jakub > > >