On Mon, Apr 08, 2002 at 10:29:21AM +0800, Ù¡³¤´ï wrote: > Hello I wrote an interrupt service routin that send sig to user space > program to inform some event happed,(My kernel version is 2.0.38) I am > sure that (according prink message) the signal has been send to > program "a", send_sig(SIGUSR1, p, 1); and the user space program catch > the signal SIGUSR1,(by using kill -10 pid, i know that it is ok), when > the interrupt happen, the kernel indeed call the send_sig function, > but the user space progamme didn't catch the signal , Why. I can't fix > out this problem. tongchangda, your emails would be easier to read if you wrapped your lines at 72 characters. (a) Why use 2.0.38? 2.0.40-rc4 is out -- if you could test it to see if your device doesn't run with it, I'm sure the maintainer of the 2.0 tree would appreciate hearing about. (Maybe not. :) (b) If calling send_sig() doesn't work, take a look at what the sys_kill() function does, and try emulating it -- keeping in mind that since you are calling from kernel memory space rather than user memory space, any copy_from_user stuff is likely not needed. Good luck. -- http://immunix.org/
Attachment:
pgp00060.pgp
Description: PGP signature