Hi Vijay, On Sun, Apr 3, 2011 at 9:27 PM, Vijay Ram Chitrapu <chitrapu.vijayram@xxxxxxxxx> wrote: > Hi Experts, > > I have a system in which there is a only 1 user process and a > corresponding kernel module (driver) associated with it to send and > receive data to the user process. In the kernel module, i have a > semaphore to protect a critical section of code during the rx and tx > paths. However, at some instance of code execution, the > down_interruptible returns EINTR, which means that the user process > has received some interrupt due to which the process has come out of > sleep due to the signal it received, due to which the kernel module > has not got the semaphore. At this point of time, i have no idea as to > which signal has triggered the user process to come out of the sleep. > Is there a way in which we can know which signal has a process > received, without registering any user defined handler to it? > > Any thoughts/ideas on debugging this problem can be of great help. > Also please correct me if i am wrong in any of my understanding > regarding down_interruptible. The simplest way is to just register a signal handler for all possible signals (in the user program) and print out which one actually happened. -- Dave Hylands Shuswap, BC, Canada http://www.davehylands.com _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies