[llvm-dev] tsan_interface_java.h; any users? reviving https://github.com/google/java-thread-sanitizer?
Jiri Danek via llvm-dev
llvm-dev at lists.llvm.org
Fri Sep 1 07:14:59 PDT 2017
On Fri, Sep 1, 2017 at 1:33 AM, Jaeheon Yi <jaeheon at google.com> wrote:
> The interface files you see are for a prototype of Java Tsan that's
> internal to Google. It's for use by a JDK that we customized with extensive
> JVM patches, and enables running the Tsan engine on Java and native code
> We presented this prototype recently at the JVM Language Summit. Here's
> the talk:
> We are starting to explore how to upstream the JVM patches. It's going to
> be tricky: The patches are fairly invasive, the setup and expectations are
> different in terms of upstream vs. home-grown build system, and the whole
> thing will require healthy upstream buy-in. This will all take time, so no
> promises of a speedy release, unfortunately.
I can imagine. Thanks for the info and the talk. I am not holding my breath.
> Since you seem to be ok with bytecode rewriting (we have reasons for not
> doing that), I would like to point you to FastTrack, a pure-Java
> implementation of the Happens-Before race detection algorithm.
> (Disclosure) I worked with the tool and the authors in my grad student
> I see it's been updated recently too, so feel free to give it a spin.
Thanks! I did. It seems not to understand Thread Pools. JDK docs say
"Memory consistency effects: Actions in a thread prior to submitting a
Runnable object to an Executor happen-before its execution begins, perhaps
in another thread.", but if I am reading the errors from RoadRunner
properly, the tool does not see that. Other than that, it seems to work.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev