Skip to contentSkip to conversation

s390_runtime_instr.2: document signum argument behavior change

PATCH In review Heiko Carstens 2 participants 2 messages Apr 14, 2018 – Apr 16, 2020

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH v2 2/4 s390_runtime_instr.2: document signum argument behavior change

Document that the signum argument is ignored in newer kernels, but that user space should pass a valid real-time signal number for backwards compatibility.

---
 man2/s390_runtime_instr.2 | 24 ++++++++++++++++++++----
 1 file changed, 20 insertions(+), 4 deletions(-)
man2/s390_runtime_instr.2 +20 -4
index 9ef293f..17665b7 100644
@@ -48,9 +48,11 @@ argument controls whether run-time instrumentation is started
 The
 .IR signum
 argument specifies the number of a real-time signal.
-The real-time signal is sent to the thread if the run-time instrumentation
-buffer is full or if the run-time-instrumentation-halted interrupt
-occurred.
+This argument was used to specify a signal number that should be delivered
+to the thread if the run-time instrumentation buffer was full or if
+the run-time-instrumentation-halted interrupt had occurred.
+It has no effect beginning with Linux 4.4, since support for signalling
+was never used and kernel support was removed.
 .SH RETURN VALUE
 On success,
 .BR s390_runtime_instr ()
@@ -67,9 +69,16 @@ is set to one of the error codes listed below.
 .B EINVAL
 The value specified in
 .IR command
-is not a valid command or the value specified in
+is not a valid command.
+.TP
+.B EINVAL
+The value specified in
 .IR signum
 is not a real-time signal number.
+From Linux 4.4 onwards, the
+.IR signum
+argument has no effect, so that an invalid signal number will not result in an
+error.
 .TP
 .B ENOMEM
 Allocating memory for the run-time instrumentation control block failed.
@@ -89,6 +98,13 @@ to call it.
 The header
 .B asm/runtime_instr.h
 is available since Linux 4.16.
+.PP
+Support for signalling was removed with Linux 4.4.
+With Linux 4.4 also the check whether
+.IR signum
+is a valid real-time signal was removed.
+For backwards compatibility with old kernels it is recommended to pass a valid
+real-time signal number and install a handler for it.
 .SH SEE ALSO
 .BR syscall (2),
 .BR signal (7)
Signature · 1 line
2.1.4
#1 lore raw

Hello Heiko, Eugene,

Quoted 7 lines · Heiko Carstens

Document that the signum argument is ignored in newer kernels, but that user space should pass a valid real-time signal number for backwards compatibility.

Thanks. Patch (at last) applied.

Cheers,

Michael

Quoted 56 lines
---
 man2/s390_runtime_instr.2 | 24 ++++++++++++++++++++----
 1 file changed, 20 insertions(+), 4 deletions(-)
man2/s390_runtime_instr.2 +20 -4
index 9ef293f..17665b7 100644
@@ -48,9 +48,11 @@ argument controls whether run-time instrumentation is started
 The
 .IR signum
 argument specifies the number of a real-time signal.
-The real-time signal is sent to the thread if the run-time instrumentation
-buffer is full or if the run-time-instrumentation-halted interrupt
-occurred.
+This argument was used to specify a signal number that should be delivered
+to the thread if the run-time instrumentation buffer was full or if
+the run-time-instrumentation-halted interrupt had occurred.
+It has no effect beginning with Linux 4.4, since support for signalling
+was never used and kernel support was removed.
 .SH RETURN VALUE
 On success,
 .BR s390_runtime_instr ()
@@ -67,9 +69,16 @@ is set to one of the error codes listed below.
 .B EINVAL
 The value specified in
 .IR command
-is not a valid command or the value specified in
+is not a valid command.
+.TP
+.B EINVAL
+The value specified in
 .IR signum
 is not a real-time signal number.
+From Linux 4.4 onwards, the
+.IR signum
+argument has no effect, so that an invalid signal number will not result in an
+error.
 .TP
 .B ENOMEM
 Allocating memory for the run-time instrumentation control block failed.
@@ -89,6 +98,13 @@ to call it.
 The header
 .B asm/runtime_instr.h
 is available since Linux 4.16.
+.PP
+Support for signalling was removed with Linux 4.4.
+With Linux 4.4 also the check whether
+.IR signum
+is a valid real-time signal was removed.
+For backwards compatibility with old kernels it is recommended to pass a valid
+real-time signal number and install a handler for it.
 .SH SEE ALSO
 .BR syscall (2),
 .BR signal (7)
Signature · 3 lines
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Linux/UNIX System Programming Training: http://man7.org/training/