The markings match glibc markings.
markings of functions in glibc are:
- error: MT-Safe locale
- error_at_line: MT-Unsafe race:error_at_line/error_one_per_line locale
Signed-off-by: Zeng Linggang <redacted>
---
man3/error.3 | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/man3/error.3 b/man3/error.3
index 7e1d47c..f040a26 100644
--- a/man3/error.3
+++ b/man3/error.3
@@ -118,6 +118,35 @@ is assigned the address of a function
instead of prefixing the message with the program name and colon.
The function should print a suitable string to
.IR stderr .
+.SH ATTRIBUTES
+For an explanation of the terms used in this section, see
+.BR attributes (7).
+.TS
+allbox;
+lb lb lbw37
+l l l.
+Interface Attribute Value
+T{
+.BR error ()
+T} Thread safety MT-Safe locale
+T{
+.BR error_at_line ()
+T} Thread safety T{
+MT-Unsafe race:error_at_line/error_one_per_line locale
+T}
+.TE
+
+The internal
+.I error_one_per_line
+variable is accessed (without any form of
+synchronization, but since it's an int used once, it should be safe
+enough) and, if this mode is enabled, static variables used to hold
+the last printed file name and line number are accessed and modified
+without synchronization; the update is not atomic and it occurs
+before disabling cancellation, so it can be interrupted after only
+one of the two variables is modified. After that, it's very much
+like
+.BR error (3).
.SH CONFORMING TO
These functions and variables are GNU extensions, and should not be
used in programs intended to be portable.--
1.9.3
--
To unsubscribe from this list: send the line "unsubscribe linux-man" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html