We make Kerio MailServer, a somewhat popular commercial Linux mail server. I have a customer who was crashing with no core dump. So, I ran our product through strace. The "error log" of our product, when run through strace, started filling up with this: services.cpp: Select failed in services acceptor loop: (514) Unknown error 514 When I look at the strace, I see that a call to socket() is receiving ERESTARTNOHAND. From Googling, my understanding is that userspace (even libc) should never see this signal. I will attach the relevant strace. I don't see this problem when I'm not running it through strace. Versions: uname -a: Linux ashe.fitnessquest.com 2.4.21-9.0.3.ELsmp #1 SMP Tue Apr 20 19:49:13 EDT 2004 i686 i686 i386 GNU/Linux strace-4.5.1-1.EL.1 glibc-2.3.2-95.6 Steps to Reproduce: 1. Install Kerio MailServer 5.7.9 2. Run it through strace with strace -ff -t 3. After about a day, the strace will be full of: 08:04:36 select(45, [44], NULL, NULL, {1, 0}) = 0 (Timeout) 08:04:37 select(45, [44], NULL, NULL, {1, 0}) = ? ERESTARTNOHAND (To be restarted) 08:04:37 --- SIGSTOP (Stopped (signal)) @ 0 (0) --- 08:04:37 select(45, [44], NULL, NULL, {0, 100000}) = 0 (Timeout) 08:04:38 select(45, [44], NULL, NULL, {1, 0}) = ? ERESTARTNOHAND (To be restarted) 08:04:38 --- SIGSTOP (Stopped (signal)) @ 0 (0) ---
Whoops, I meant "a call to select()".
Created attachment 100356 [details] Sample IMAP thread strace You can see the problem toward the end of this thread. For reference, this is an IMAP server thread, communicating with an IMAP client.
Note the "Unknown Error 514" -- the application (Kerio MailServer) also sees the ERESTARTNOHAND (which has a value of 514 in the kernel sources).
This bug is filed against RHEL 3, which is in maintenance phase. During the maintenance phase, only security errata and select mission critical bug fixes will be released for enterprise products. Since this bug does not meet that criteria, it is now being closed. For more information of the RHEL errata support policy, please visit: http://www.redhat.com/security/updates/errata/ If you feel this bug is indeed mission critical, please contact your support representative. You may be asked to provide detailed information on how this bug is affecting you.