From bb6496b96444dfd55d7105396780f6eba14b1cd9 Mon Sep 17 00:00:00 2001 From: DJ Delorie Date: Fri, 17 Jan 2025 17:34:02 -0500 Subject: manual: Update signal descriptions Based on auditing all the signals and source trees for Hurd and Linux... SIGSYS - This is not used for a bad system call (ENOSYS is used for that). This is used by SECCOMP and some cases where an invalid sub-function was requested. SIGSTKFLT - Note it used to be a coprocessor stack fault but is now obsolete and available for general user use. SIGLOST - Hurd only now; note that its original purpose as an NFS lock lost signal is obsolete. SIGPWR - Note this is for power lost *and* power restored, and is more a user-mode signal than a kernel-generated signal. Reviewed-by: Florian Weimer diff --git a/manual/signal.texi b/manual/signal.texi index 2012980efe..842b4e49a2 100644 --- a/manual/signal.texi +++ b/manual/signal.texi @@ -427,9 +427,18 @@ failure to properly emulate them. @deftypevr Macro int SIGSYS @standards{Unix, signal.h} -Bad system call; that is to say, the instruction to trap to the -operating system was executed, but the code number for the system call -to perform was invalid. +System call event. This signal may be generated by a valid system +call which requested an invalid sub-function, and also by the SECCOMP +filter when it filters or traps a system call. + +If the system call itself is invalid or unsupported by the kernel, the +call will not raise this signal, but will return @code{ENOSYS}. +@end deftypevr + +@deftypevr Macro int SIGSTKFLT +Coprocessor stack fault. Obsolete, no longer generated. This signal +may be used by applications in much the way @code{SIGUSR1} and +@code{SIGUSR2} are. @end deftypevr @node Termination Signals @@ -752,12 +761,11 @@ that isn't connected. @xref{Sending Data}. @deftypevr Macro int SIGLOST @standards{GNU, signal.h} @cindex lost resource signal -Resource lost. This signal is generated when you have an advisory lock -on an NFS file, and the NFS server reboots and forgets about your lock. - -On @gnuhurdsystems{}, @code{SIGLOST} is generated when any server program -dies unexpectedly. It is usually fine to ignore the signal; whatever -call was made to the server that died just returns an error. +Resource lost. On @gnuhurdsystems{}, @code{SIGLOST} is generated when +any server program dies unexpectedly. It is usually fine to ignore +the signal; whatever call was made to the server that died just +returns an error. This signal's original purpose of signalling a lost +NFS lock is obsolete. @end deftypevr @deftypevr Macro int SIGXCPU @@ -817,6 +825,17 @@ to print some status information about the system and what the process is doing. Otherwise the default is to do nothing. @end deftypevr +@deftypevr Macro int SIGPWR +@cindex power event signal +Power lost or restored. On s390x Linux systems, this signal is +generated when a machine check warning is issued, and is sent to the +process designated to receive ctrl-alt-del notifications. Otherwise, +it is up to userspace applications to generate this signal and manage +notifications as to the type of power event that happened. + +The default action is to terminate the process. +@end deftypevr + @node Signal Messages @subsection Signal Messages @cindex signal messages