This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

2.2.0: Python 2.7.10 subprocess.Popen + Thread causes SIGSEGV (Win 2012R2 - WOW64 on AMD64)


Hi,

First time mailing this list, so hopefully I followed the guidelines correctly.  I was able to simplify the problem I am having into a simple test.
I create a thread and in that thread use Popen to execute 'echo hello' but the process ends up getting terminated with -11 most of the time and I end up with no stdout or stderr.  When it does work as expected, I get 'hello' on stdout.  This looks to only happen on Win 2012, I have tried 2008 and it did not encounter the same problem.  I also tested on Ubuntu 12.04 Python 2.7.

I tried rebaseall a few times but did not seem to help.  I also looked at the installed apps, but there is barely anything on the system.

Please find attached the cygcheck output and testcase below with output.

Thanks for any help,
Gump

---
import subprocess
import shlex
from threading import Thread

def execute():
    cmd = 'echo hello'
    def exc():
        for x in range(10):
            p = subprocess.Popen(shlex.split(cmd),
                                 stdout=subprocess.PIPE)
            print p.communicate()
            print p.poll()
    t = Thread(target=exc)
    t.start()
    t.join()

if __name__ == '__main__':
    execute()

OUTPUT:
('hello\n', None)
0
('hello\n', None)
0
('hello\n', None)
0
('', None)
-11
('', None)
-11
('', None)
-11

Attachment: cygcheck.out
Description: cygcheck.out

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]