summaryrefslogtreecommitdiffstats
path: root/Python/ceval_gil.h
Commit message (Collapse)AuthorAgeFilesLines
* Make (most of) Python's tests pass under Thread Sanitizer.Jeffrey Yasskin2010-05-031-20/+28
| | | | | | | | | | | | | | | | | | http://code.google.com/p/data-race-test/wiki/ThreadSanitizer is a dynamic data race detector that runs on top of valgrind. With this patch, the binaries at http://code.google.com/p/data-race-test/wiki/ThreadSanitizer#Binaries pass many but not all of the Python tests. All of regrtest still passes outside of tsan. I've implemented part of the C1x atomic types so that we can explicitly mark variables that are used across threads, and get defined behavior as compilers advance. I've added tsan's client header and implementation to the codebase in dynamic_annotations.{h,c} (docs at http://code.google.com/p/data-race-test/wiki/DynamicAnnotations). Unfortunately, I haven't been able to get helgrind and drd to give sensible error messages, even when I use their client annotations, so I'm not supporting them.
* Try to strengthen condition-waiting under Windows.Antoine Pitrou2009-11-121-11/+9
| | | | | If it doesn't work (doesn't solve erratic freezes) we'll have to resort to tougher (Windows-only) measures.
* Our condition variable emulation under Windows is imperfect, whichAntoine Pitrou2009-11-111-9/+24
| | | | | seems to be the cause of the buildbot hangs. Try to fix it, and add some comments.
* Merge in the new GIL.Antoine Pitrou2009-11-101-0/+335