On Fri, 5 Jul 2024 13:15:09 +0000 "Abinash Mohanty \(amohanty\) wrote: > Hi, > > Problem Statement > Our application is getting into wait mode after running for some time and > Cygwin continues to throw the below Exception Error: > 1599350352 [sig] my_app 741 sig_send: error sending signal 11, pid 741, pipe > handle 0x130, nb 0, packsize 176, Win32 error 0 > > Problem Description > We have initialized and used SIGUSR1, SIGALARAM and SIGPIPE signals in our > code. We are using below Cygwin APIs for initializing or adding the signals > sigset_t signal_set; > > sigemptyset(&signal_set); > sigaddset(&signal_set, SIGUSR1); > sigaddset(&signal_set, SIGALRM); > sigaddset(&signal_set, SIGPIPE); > > > Masking the signals using pthread_sigmask() > > Catch the signals and process them > void HandleSignals() > { > int sig_number; > > for(;;) { > > sig_wait(signal_set,sig_number); > > switch(sig_number) { > case SIGUSR1: > { > pthread_mutex_lock(&m_mutex); > > //Handing the SIGUSR1 signals > pthread_mutex_unlock(&m_mutex); > } > break; > case SIGALRM: > //Handing the SIGALRM signals > break; > default: > break; > } /* end switch */ > > } > } > > However after running my application multiple times which makes use of Cygwin > Signaling our application goes into WAIT MODE(probably waiting for signals) > and we get the below error message continuously in our console. > 1599350352 [sig] my_app 741 sig_send: error sending signal 11, pid 741, pipe > handle 0x130, nb 0, packsize 176, Win32 error 0 > > Our application is blocked due to this error and we are unable to proceed > further. > Attaching strace logs and adding few error log here as well:- > > 165 46400560 [main] my_app 6964 select_stuff::wait: m 4, us 100000, > wmfo_timeout -1 > 81 46400641 [socksel] my_app 6964 SetThreadName: SetThreadDescription() > failed. 00000000 10000000 > 100 46400741 [socksel] my_app 6964 thread_socket: stuff_start 0x7FFFFB198, > timeout 4294967295 > 58 46400799 [socksel] my_app 6964 peek_socket: read_ready: 0, write_ready: > 0, except_ready: 0 > 76569 46477368 [sig] my_app 6964 sigpacket::process: signal 30 processing > 86 46477454 [sig] my_app 6964 init_cygheap::find_tls: sig 30 > --- Process 5016 (pid: 6964), exception c0000005 at 00007ffb486aaffa > 162 46477616 [sig] my_app 6964 exception::handle: In cygwin_except_handler > exception 0xC0000005 at 0x7FFB486AAFFA sp 0x289C990 > 36 46477652 [sig] my_app 6964 exception::handle: In cygwin_except_handler > signal 11 at 0x7FFB486AAFFA > 53 46477705 [sig] my_app 6964 break_here: break here > --- Process 5016 (pid: 6964), exception c0000005 at 00007ffb486aaffa > --- Process 5016 (pid: 6964), exception c0000005 at 00007ffb486aaffa > --- Process 5016 (pid: 6964), exception c0000005 at 00007ffb486aaffa > --- Process 5016 (pid: 6964), exception c0000005 at 00007ffb486aaffa > --- Process 5016 (pid: 6964), exception c0000005 at 00007ffb486aaffa > --- Process 5016 (pid: 6964), exception c0000005 at 00007ffb486aaffa > --- Process 5016 (pid: 6964), exception c0000005 at 00007ffb486aaffa > --- Process 5016 (pid: 6964), exception c0000005 at 00007ffb486aaffa > --- Process 5016 (pid: 6964), exception c0000005 at 00007ffb486aaffa > --- Process 5016 (pid: 6964), exception c0000005 at 00007ffb486aaffa > > Also attaching the output of cygcheck -s -v -r > cygcheck.out > > As this is a blocker issue for our application , quick resolution would > really help to proceed further. > Please let us know if you need more information.
Full STC source code please. -- Takashi Yano <takashi.y...@nifty.ne.jp>