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]

Re: cygwin-1.7.10-1 fork - address space needed by ... already in use


On Mar  5 13:02, Denis Excoffier wrote:
> On Mon, Mar 05, 2012 at 10:59:19AM +0100, Corinna Vinschen wrote:
> >> On Mar  5 08:09, Denis Excoffier wrote:
> >> >    947 [main] sh 660! _pinfo::dup_proc_pipe: something failed for pid 0: res 660, hProcess 0x6C8, wr_proc_pipe 0x758 vs. 0x758, Win32 error 5 
> >> >      2 [main] sh 3360! _pinfo::dup_proc_pipe: something failed for pid 0: res 3360, hProcess 0x6BC, wr_proc_pipe 0x758 vs. 0x758, Win32 error 5 
> >> >   1345 [main] sh 3772! _pinfo::dup_proc_pipe: something failed for pid 0: res 3772, hProcess 0x6CC, wr_proc_pipe 0x758 vs. 0x758, Win32 error 5 
> >> > [...]
> >> 
> >> Actually, I don't quite understand them.  The pid is apparently not
> >> initialized yet, at the time the message occurs.  The code in question
> >> tries to duplicate a pipe handle into another process and fails.  But
> >> the process handle to the other has been created by this process, so it
> >> should have all rights to duplicate the handle.  Hmm.  What command
> >> were you running at the time?  Maybe it is reproducible.
> You mean, may be it is debuggable?
> 
> Please first apply the following, and provide me with further
> instrumentation in order that i can narrow down the problem when it
> occurs.
> 
> *** winsup0/cygwin/pinfo.cc	Wed Feb 15 15:46:18 2012
> --- winsup/cygwin/pinfo.cc	Mon Mar  5 12:53:30 2012
> ***************
> *** 1001,1007 ****
>       {
>         wr_proc_pipe = orig_wr_proc_pipe;
>         warn_printf ("something failed for pid %d: res %d, hProcess %p, wr_proc_pipe %p vs. %p, %E",
> ! 		   res, pid, hProcess, wr_proc_pipe, orig_wr_proc_pipe);
>       }
>     else
>       {
> --- 1001,1007 ----
>       {
>         wr_proc_pipe = orig_wr_proc_pipe;
>         warn_printf ("something failed for pid %d: res %d, hProcess %p, wr_proc_pipe %p vs. %p, %E",
> ! 		   pid, res, hProcess, wr_proc_pipe, orig_wr_proc_pipe);
>       }
>     else
>       {

Thanks for catching!  I applied this patch.  So the pids are not wrong,
after all.  As for debugging, it would be helpful to have a command to
reproduce it.  I can't tell you off-hand what to hunt for.  This is
Chris' code, so he probably knows much better what to look for than I do.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

--
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]