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: setsid rxvt & # window comes up, hangs


Hi Chris,

On Feb 25 06:42, Tom Rodman wrote:
> Hello:
> 
> When I run
>   setsid rxvt &
> the window opens and hangs without a shell prompt.
> 
>   rxvt &  # works ok

I've looked through the snapshots.  setsid rxvt& worked until
2011-10-13.  From 2011-10-15 up to 2011-10-21 it was not possible to
start rxvt at all, error message "rxvt: could not obtain control of
tty".  Starting with 2011-10-22, rxvt hangs with two processes in the
process list:

     2688       1    2688       2708  pty1    11001 15:48:58 /usr/bin/rxvt
S    1236    2688    1236       1236  pty1    11001 15:48:58 /usr/bin/rxvt

Observing what happens with strace suggests that the child with pid
1236 handles a SIGTTOU:

   18  591023 [sig] rxvt 1236 sigpacket::process: signal 22 processing
  159  591182 [sig] rxvt 1236 _cygtls::find_tls: signal 22
   53  591235 [sig] rxvt 1236 sigpacket::process: signal 22, about to call 0x61039331
   53  591288 [sig] rxvt 1236 setup_handler: controlled interrupt. stackptr 0x28DA34, stack 0x28DA30, stackptr[-1] 0x414FE1
  [...]

and then the parent 2688 is supposed to handle a SIGCHLD.  The problem
is apparently that it can't handle this signal:

  161  591898 [main] rxvt 1236 sig_handle_tty_stop: process 1236 stopped by signal 22
   71  592009 [waitproc] rxvt 2688 sig_send: returning 0x0 from sending signal 20
   82  592091 [sig] rxvt 2688 _cygtls::find_tls: signal 20
  158  592249 [sig] rxvt 2688 sigpacket::process: signal 20, about to call 0x4053F0
   20  592269 [waitproc] rxvt 2688 proc_waiter: looping
  112  592381 [sig] rxvt 2688 setup_handler: suspending thread
  296  592677 [sig] rxvt 2688 _cygtls::inside_kernel: pc 0x76798AFE, h 0x76780000, inside_kernel 1
   92  592769 [sig] rxvt 2688 setup_handler: couldn't interrupt.  trying again.
  139  592908 [sig] rxvt 2688 setup_handler: suspending thread
  [...]

At this point, the double loop in setup_handler runs the full 100
iterations up to:

 3940  744861 [sig] rxvt 2688 setup_handler: signal 20 not delivered
 
>From there on, nothing much happens.  The parent waits in select and
the child is stopped.

Do you have an idea why this happens?  Anything I could try?


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]