Christopher Faylor wrote: > > On Tue, Sep 14, 2004 at 11:01:23PM -0400, Bogdan Vacaliuc wrote: > >Ok. Running 09/14/04 snapshot is looking *good* so far. I stopped the > >test script at 150 passes. > > > >I'm starting my configure/build/redo test and will let that run > >overnight. I'll check in tomorrow AM and report on that. 1 successful > >configure/build so far. > > That points to a problem with bash, then, not cygwin. > > If we can confirm this then we should probably notify the bash > maintainer.
He might be interested by the attachment below, obtained from the bashstrace in http://cygwin.com/ml/cygwin/2004-09/msg00626.html fgrep ' 1696 ' bashstrace | grep '= fork\|wait4: call' > bashstrace_grep.txt Every fork is followed by a wait, except the one that leads to trouble. Somehow bash draws conclusions about its status without doing a wait. Pid reuse shouldn't be the root cause of this behavior. Also according the the following comment in bash code, the Cygwin style of pid reuse should be no problem: #if defined (RECYCLES_PIDS) /* LynxOS, for one, recycles pids very quickly -- so quickly that a new process may have the same pid as the last one created. This has been reported to fix the problem. */ Pierre
117 872308 [main] bash 1696 fork: 2308 = fork() 125 873876 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 137 927912 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 152 1115952 [main] bash 1696 fork: 2036 = fork() 210 1117609 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 137 1223831 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 117 1662780 [main] bash 1696 fork: 1488 = fork() 144 1664261 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 131 1867156 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 116 1914817 [main] bash 1696 fork: 456 = fork() 139 1916356 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 146 2114502 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 120 2161965 [main] bash 1696 fork: 2104 = fork() 143 2163481 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 145 2368793 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 118 2416409 [main] bash 1696 fork: 1432 = fork() 165 2417863 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 145 2616099 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 119 2664589 [main] bash 1696 fork: 2308 = fork() 159 2665939 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 148 2865875 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 129 2914912 [main] bash 1696 fork: 2036 = fork() 676 2916792 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 146 3114780 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 204 3162946 [main] bash 1696 fork: 1488 = fork() 126 3164271 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 203 3461625 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 155 3509295 [main] bash 1696 fork: 456 = fork() 126 3510735 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 206 3712483 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 143 3765025 [main] bash 1696 fork: 2104 = fork() 127 3766418 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 145 3965535 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 117 4125336 [main] bash 1696 fork: 1432 = fork() 126 4126809 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 125 4358150 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 121 4405766 [main] bash 1696 fork: 2308 = fork() 137 4407184 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 147 4611082 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 116 4659500 [main] bash 1696 fork: 2036 = fork() 169 4661074 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 148 4866256 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 115 4913817 [main] bash 1696 fork: 1488 = fork() 157 4915180 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 145 5116382 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 116 5165835 [main] bash 1696 fork: 456 = fork() 163 5167204 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 145 5375291 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 130 5423472 [main] bash 1696 fork: 2104 = fork() 655 5425369 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 342 5625852 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 115 5859774 [main] bash 1696 fork: 1432 = fork() 127 5862344 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 145 5940525 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 118 6074762 [main] bash 1696 fork: 652 = fork() 149 6076183 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 145 6216456 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 117 6249297 [main] bash 1696 fork: 2308 = fork() 128 6400094 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 159 6414758 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 117 6735571 [main] bash 1696 fork: 1744 = fork() 128 6900186 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 162 6914401 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 118 7614921 [main] bash 1696 fork: 928 = fork() 130 7618114 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 261 7804716 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 117 7832737 [main] bash 1696 fork: 2444 = fork() 163 7834208 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 156 7933846 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 116 8003620 [main] bash 1696 fork: 1432 = fork() 127 8006178 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 160 8088113 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 140 8224719 [main] bash 1696 fork: 1488 = fork() 128 8365057 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 125 8379982 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 117 10989717 [main] bash 1696 fork: 2308 = fork() 128 11031593 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 126 11045283 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 118 11075562 [main] bash 1696 fork: 928 = fork() 125 11116011 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 139 11129323 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 117 11257063 [main] bash 1696 fork: 2444 = fork() 127 11259660 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 264 11331012 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 127 11415317 [main] bash 1696 fork: 2292 = fork() 128 11418076 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 156 11488899 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 118 11943232 [main] bash 1696 fork: 456 = fork() 134 11945914 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 125 12133772 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 117 12233382 [main] bash 1696 fork: 1432 = fork() 127 12236109 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 158 12320728 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 119 12476801 [main] bash 1696 fork: 1488 = fork() 129 12479291 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 157 12555608 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 127 13812007 [main] bash 1696 fork: 2308 = fork() 129 13904349 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 160 13918945 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 131 17328684 [main] bash 1696 fork: 2444 = fork() 129 17330018 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 168 18078679 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 116 18111440 [main] bash 1696 fork: 500 = fork() 129 18657054 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 150 18670941 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 167 18705218 [main] bash 1696 fork: 456 = fork() 136 18706550 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 156 18746487 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 150 18790459 [main] bash 1696 fork: 1488 = fork() 128 18883008 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 124 18897087 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 130 18937532 [main] bash 1696 fork: 2104 = fork() 129 19086345 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 137 19103581 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 117 19645762 [main] bash 1696 fork: 1432 = fork() 127 20035554 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 159 20049156 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 720 32419577 [main] bash 1696 fork: 316 = fork() 131 33169800 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 125 33179922 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 120 33510682 [main] bash 1696 fork: 2296 = fork() 126 33589937 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 123 33600762 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 738 33951098 [main] bash 1696 fork: 888 = fork() 128 34030382 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 144 34040883 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1 786 34092978 [main] bash 1696 fork: 456 = fork() 125 34198383 [main] bash 1696 fork: 2016 = fork() 708 34200943 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 124 34210650 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 0 203 34230192 [main] bash 1696 wait4: calling proc_subproc, pid -1, options 1
-- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/