Page MenuHomeFreeBSD

D55750.id173398.diff
No OneTemporary

D55750.id173398.diff

diff --git a/lib/libsys/sigreturn.2 b/lib/libsys/sigreturn.2
--- a/lib/libsys/sigreturn.2
+++ b/lib/libsys/sigreturn.2
@@ -47,17 +47,25 @@
restored from the context structure pointed to by
.Fa scp .
The system call does not return;
-the users stack pointer, frame pointer, argument pointer,
-and processor status longword are restored from the context.
-Execution resumes at the specified pc.
-This system call is used by the trampoline code and
-.Xr longjmp 3
+the whole userspace context as specified by
+.Fa scp ,
+including the users stack pointer, all general purpose registers,
+coprocessor state, process status register, and program counter
+are restored from the context.
+Execution resumes at the program counter from the specified context.
+.Pp
+This system call is used by the kernel-provided signal trampoline code,
+located in the virtual dso (vdso) on some architectures, or as raw code
+in the shared page if vdso is not provided,
when returning from a signal to the previously executing program.
.Sh RETURN VALUES
If successful, the system call does not return.
-Otherwise, a value of -1 is returned and
+Otherwise, a value of -1 may be returned and
.Va errno
is set to indicate the error.
+Some conditions detected by hardware result in the delivery of
+a synchronous trap signal to the thread, in addition to setting
+the system call error code.
.Sh ERRORS
The
.Fn sigreturn

File Metadata

Mime Type
text/plain
Expires
Wed, Jul 22, 4:02 PM (4 h, 42 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
35371216
Default Alt Text
D55750.id173398.diff (1 KB)

Event Timeline