Right now I have some processes receiving SIGHUP according to my truss
(truss -w all -r all -v all -o truss.log -p 802 &):
pollsys(0xFFBFCA08, 1, 0x00000000, 0x00000000) (sleeping...)
fd=11 ev=POLLRDNORM rev=POLLRDNORM
Received signal #1, SIGHUP, in pollsys() [caught]
siginfo: SIG#0
pollsys(0xFFBFCA08, 1, 0x00000000, 0x00000000) Err#4 EINTR
fd=11 ev=POLLRDNORM rev=POLLRDNORM
lwp_sigmask(SIG_SETMASK, 0xFFBFFEDF, 0x0000FFF7) = 0xFFBFFEFF
[0x0000FFFF]
getpid() = 802 [797]
How do I figure out what is sending the SIGHUP?
|
|
0
|
|
|
|
Reply
|
CKM
|
9/23/2010 4:44:12 PM |
|
CKM wrote:
> Right now I have some processes receiving SIGHUP according to my truss
> (truss -w all -r all -v all -o truss.log -p 802 &) [...]
>
> How do I figure out what is sending the SIGHUP?
As last resort, and if the receiving processes are actually
arbitrary and unrelated, then you could run another process
which handles all signals and reports the content of the
siginfo_t structure, handled with sigaction(2).
It contains the sender pid if the signal came from a user
process and not from the kernel itself.
I had this once with a buggy rsync (euid 0), running amok
in the night and signalling around with SIGHUP.
--
http://www.in-ulm.de/~mascheck/various/siginfo/
|
|
0
|
|
|
|
Reply
|
Sven
|
9/23/2010 9:07:42 PM
|
|