NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/44986: "screens" gets stuck during detach



The following reply was made to PR kern/44986; it has been noted by GNATS.

From: Matthias Scheler <tron%zhadum.org.uk@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: 
Subject: Re: kern/44986: "screens" gets stuck during detach
Date: Sat, 21 May 2011 13:31:23 +0100

 On Sat, May 21, 2011 at 11:40:01AM +0000, gnats-admin%netbsd.org@localhost 
wrote:
 > Thank you very much for your problem report.
 > It has the internal identification `kern/44986'.
 > The individual assigned to look at your
 > report is: kern-bug-people. 
 > 
 > >Category:       kern
 > >Responsible:    kern-bug-people
 > >Synopsis:       "screens" gets stuck during detach
 > >Arrival-Date:   Sat May 21 11:40:01 +0000 2011
 
 Here is a better stack trace for the hanging "screen" process:
 
 (gdb) where
 #0  0xbbab2657 in _sys___sigsuspend14 () from /usr/lib/libc.so.12
 #1  0xbbadb252 in pause () from /usr/lib/libc.so.12
 #2  0x0806bb13 in Attacher ()
 #3  0x0804e7e6 in main ()
 
 The "Attacher" function looks like this (after "cpp"):
 
 void
 Attacher()
 {
   xsignal(1, AttacherFinit);
   xsignal(1, AttacherFinit);
   xsignal(30, AttacherFinitBye);
 
 
   xsignal(31, DoLock);
   xsignal(2, AttacherSigInt);
   xsignal(18, SigStop);
 
   xsignal(28, AttacherWinch);
 
 
   do {} while (0);
   dflag = 0;
   xflag = 1;
   for (;;)
     {
       xsignal(14, AttacherSigAlarm);
       alarm(15);
       pause();         <--- It seems get stuck here.
       alarm(0);
       if (kill(MasterPid, 0) < 0 && (*__errno()) != 1)
         {
    do {} while (0);
    AttacherPanic++;
  }
 [...]
 }
 
 My system also got stuck during shutdown cleanly because "cron" wouldn't die
 (until I killed it with "kill -9"). There seems to be a general problem
 with signal handling.
 
        Kind regards
 
 -- 
 Matthias Scheler                                  http://zhadum.org.uk/
 


Home | Main Index | Thread Index | Old Index