wierd top bug = problem with commune_send

Chris January chris@atomice.net
Thu Jun 12 18:15:00 GMT 2003


By Windows process I mean a non-Cygwin executable launched by a Cygwin
process.
e.g.
open a Cygwin bash window
type 'ping -n 10000 localhost'
open another Cygwin bash window
type ps
type /proc/<pid of ping>/cmdline

The cmdline will be wrong. Somehow in Ashok's case it's actually hanging
instead.

strace output from Ashok:
  150 1199290 [main] top 1352 open: open (/proc/1788/cmdline, 0x0)
   63 1199353 [main] top 1352 normalize_posix_path: src /proc/1788/cmdline
   61 1199414 [main] top 1352 normalize_posix_path: /proc/1788/cmdline =
normalize_posix_path (/proc/1788/cmdline)
   61 1199475 [main] top 1352 mount_info::conv_to_win32_path:
conv_to_win32_path (/proc/1788/cmdline)
   63 1199538 [main] top 1352 fhandler_proc::get_proc_fhandler:
get_proc_fhandler(/proc/1788/cmdline)
  120 1199658 [main] top 1352 set_flags: flags: binary (0x2)
   62 1199720 [main] top 1352 mount_info::conv_to_win32_path: src_path
/proc/1788/cmdline, dst D:\Cygwin\proc\1788\cmdline, flags 0xA, rc 0
   71 1199791 [main] top 1352 dtable::build_fhandler: fd -1, fh 0x615F0EF8
   58 1199849 [main] top 1352 fhandler_process::exists: exists
(/proc/1788/cmdline)
   66 1199915 [main] top 1352 dtable::build_fhandler: fd 8, fh 0x615F0EF8
   59 1199974 [main] top 1352 fhandler_base::set_flags: flags 0x10000,
supplied_bin 0x0
   57 1200031 [main] top 1352 fhandler_base::set_flags: O_TEXT/O_BINARY set
in flags 0x10000
   65 1200096 [main] top 1352 fhandler_base::set_flags: filemode set to
binary
  283 1200379 [main] top 1352 sig_send: pid 1788, signal 0, its_me 0
   73 1200452 [main] top 1352 getsem: pid 1788, ppid 1, wait 1000,
initializing 0
   93 1200545 [main] top 1352 sig_send: Not waiting for sigcomplete.  its_me
0 signal 0
   63 1200608 [main] top 1352 sig_send: returning 0 from sending signal 0
12795619 13996227 [sig] top 1352 wait_sig: awake

Chris

> -----Original Message-----
> From: cygwin-developers-owner@cygwin.com
> [mailto:cygwin-developers-owner@cygwin.com]On Behalf Of Christopher
> Faylor
> Sent: 12 June 2003 18:33
> To: cygwin-developers@cygwin.com
> Subject: Re: wierd top bug = problem with commune_send
>
>
> On Thu, Jun 12, 2003 at 06:29:32PM +0100, Chris January wrote:
> >The problem reported on the Cygwin mailing list as "wierd top
> bug" appears
> >to be due to a problem in commune_send. commune_send gets stuck in a busy
> >loop waiting for the reply to the _SIGCOMMUNE signal when the
> signal is sent
> >to a Windows process as opposed to a Cygwin process. The Windows process
> >doesn't understand signals so doesn't reply to it - and commune_send gets
> >stuck in the busy loop at line 365. I don't have time to actually craft a
> >fix at the moment I'm afraid.
>
> commune_send is not *supposed* to be communicating with a non-cygwin
> process.  How is it possible for there to be a _pinfo structure for a
> non-cygwin process?
>
> cgf



More information about the Cygwin-developers mailing list