[LLVMbugs] [Bug 22335] New: Deadlock in llvm-lit on windows 7

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Mon Jan 26 09:55:35 PST 2015


            Bug ID: 22335
           Summary: Deadlock in llvm-lit on windows 7
           Product: Test Suite
           Version: trunk
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: normal
          Priority: P
         Component: lit
          Assignee: unassignedbugs at nondot.org
          Reporter: sgundapa at codeaurora.org
                CC: daniel at zuster.org, llvmbugs at cs.uiuc.edu
    Classification: Unclassified

I am observing a deadlock with llvm-lit on windows 7.
When I attached a debugger, the communicate() call is blocked.

In file utils/lit/lit/TestRunner.py
>    # FIXME: There is probably still deadlock potential here. Yawn.
>   procData = [None] * len(procs)
>    procData[-1] = procs[-1].communicate()

I am invoking python directly on windows to run the unit tests. 
C:\Python27\python.exe C:\build\llvm\Release\bin\llvm-lit.py -v -j 12 --param
build_mode=Release --param build_config=Win32
Note: If I invoke with ā€œ-j 1ā€ , the unit tests finish but took a lot of time.
There is no deadlock. I am using python version 2.7.6.

At this moment, I believe the issue is caused by stdout filling the OS buffer
there by blocking the communicate() call.
It is possible some of the unit tests dump a lot of text/data to stdout. FYI, I
have a couple of unit tests of my own in the code base.
On Linux, there is no deadlock but on windows I am hitting a deadlock 7 out of
10 times. I tried invoking python with ā€œ-uā€ but in vain.

When I looked at llvm-lit code, I saw the code to avoid deadlocks but there was
no guarantee, like the one I pasted above.
Would appreciate if some one take a look at it and provide more context on

You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20150126/2d3a4b69/attachment.html>

More information about the llvm-bugs mailing list