https://bugzilla.novell.com/show_bug.cgi?id=470761
User nfbrown@novell.com added comment
https://bugzilla.novell.com/show_bug.cgi?id=470761#c1
Neil Brown changed:
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|nfbrown@novell.com |pbaudis@novell.com
--- Comment #1 from Neil Brown 2009-01-29 20:14:47 MST ---
Yes. This is very easy to reproduce.
You can simply try to "rpcinfo -p' a non-existent address like
rpcinfo -p 1.1.1.1
and find that nothing but SIGKILL (or a 3 minute wait) will kill it.
An 'strace' of rpcinfo shows:
15:58:21 rt_sigprocmask(SIG_SETMASK, ~[RTMIN RT_1], [], 8) = 0
15:58:21 getrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=8*1024}) = 0
15:58:21 mmap2(NULL, 397312, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
-1, 0) = 0xb7e27000
15:58:21 getpeername(3, 0xbff951a8, [128]) = -1 ENOTCONN (Transport endpoint is
not connected)
15:58:21 connect(3, {sa_family=AF_INET, sin_port=htons(111),
sin_addr=inet_addr("192.168.1.3")}, 16) = -1 ETIMEDOUT (Connection timed out)
16:01:30 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
16:01:30 --- SIGTERM (Terminated) @ 0 (0) ---
16:01:30 +++ killed by SIGTERM +++
So it is using rt_sigprocmask to block all signals other than RTmin and RT_1.
This clearing include SIGINT, SIGTERM SIGSTOP etc.
All of this code (rpcinfo, the rpc libraries, and everything else) is
in the glibc package, so I'll reassign to the maintainer of glibc.
--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.