standards/92362: [headers] [patch] Missing SIGPOLL in kernel
gcooper at FreeBSD.org
Sun Jan 16 22:08:39 UTC 2011
The OP's claim is wrong. SIGIO is a signal that can be discarded,
whereas SIGPOLL by definition terminates processes.
From SUSv7 (pardon the poor formatting):
The following signals shall be supported on all implementations
(default actions are explained below the table):
Signal Default Action Description
SIGPOLL T Pollable event.
Abnormal termination of the process. The process is terminated
with all the consequences of _exit() except that the status made
available to wait() and waitpid() indicates abnormal termination by
the specified signal.
From signal(3) (pardon the poor formatting):
23 SIGIO discard signal I/O is possible on a descriptor
SIGPOLL is actually somewhere between SIGIO and SIGIOT (SIBABRT),
but there isn't a 1:1 mapping for the signal definition. This is also
XSI Stream specific (which is not [fully] implemented in [Free]BSD).
SIGIO is also used by fcntl(2) to denote when I/O is available, but
this connotation is not noted in SUSv7 either.
This item should probably be closed as WONTFIX as we don't
implement SIGPOLL in its proper form.
PS FWIW GNU/Linux needs to be educated on the fact that SIGIO is a
discardable signal on other platforms and not an alias for SIGPOLL on
BSD (especially when they use it as an alias but don't document the
requirement >:(...), because a quick look at some glibc and Linux
headers shows that they are using them as a 1:1 mapping (I am using
Fedora 13 as a reference).
More information about the freebsd-standards