On Fri, Oct 24, 2014 at 3:05 AM, Simon Atanasyan <[email protected]> wrote:
> After the following change the Lrs-race test case starts
> to intermittently fails:
>
> eac65dc Add basic support for the QNX operating system

Yes: http://lists.nongnu.org/archive/html/libunwind-devel/2014-08/msg00019.html

> When we include "config.h" into the "libunwind_i.h" we undefine
> the HAVE___THREAD macro in a few lines below in #include "config.h"
> pragma. The change eac65dc includes "config.h" into the "dwarf.h"
> but forgets to undefine HAVE___THREAD. So now this macro has inconsistent
> state among the code. Somewhere it is defined, somewhere not. In particular
> it becomes defined in the mi/Gset_caching_policy.c and we do not replace
> UNW_CACHE_PER_THREAD caching policy by the UNW_CACHE_GLOBAL.

Thanks for the root cause!

>
> The fix is rather dirty. It adds the code to undefine HAVE___THREAD in
> the "dwarf.h" like we do that in the "libunwind_i.h". Probably the ideal
> solution should fix per-thread caching implementation or turned it off at
> all on platforms where it is not completely and correctly supported.
>
> --
> Simon Atanasyan
>
> _______________________________________________
> Libunwind-devel mailing list
> [email protected]
> https://lists.nongnu.org/mailman/listinfo/libunwind-devel
>



-- 
Paul Pluzhnikov

_______________________________________________
Libunwind-devel mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/libunwind-devel

Reply via email to