From: Peng Haitao <penght-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
To: Carlos O'Donell <carlos-v2tUB8YBRSi3e3T8WW9gsA@public.gmane.org>,
Michael Kerrisk
<mtk.manpages-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: Alexandre Oliva <aoliva-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
linux-man <linux-man-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>
Subject: Re: [PATCH] iswblank.3: ATTRIBUTES: Note function that is thread safe with exceptions
Date: Thu, 13 Feb 2014 12:07:03 +0800 [thread overview]
Message-ID: <52FC44E7.1030000@cn.fujitsu.com> (raw)
In-Reply-To: <CAE2sS1ijg2ef1WcswN0o+wmJOcgLDoCEbYrcNJyOxhS-HCxuSg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
On 02/12/2014 11:31 PM, Carlos O'Donell wrote:
>>>> +The
>>>> +.BR iswblank ()
>>>> +function is thread-safe with exceptions.
>>>> +It can be safely used in multithreaded applications, as long as
>>>> +.BR setlocale (3)
>>>> +is not called to change the locale during its execution.
>>>
>>> Now that glibc 2.19 is out the door and using a standard set of
>>> "exception" markers should we try to standardize the same markers?
>>>
>>
>> Yes, maybe it is better.
>> But in Oracle Solaris's manpages, iswblank is marked "MT-Safe with exceptions".
>> I also think "MT-Safe with exceptions" is OK.
>
> My suggestion is:
>
> "The function iswblank() is thread safe with exceptions (locale). See
> "Safety Concepts" for more information."
>
> Then describe the locale issue once in the "Safety Concepts" section.
>
> This reduces duplicated text and simplifies each man page.
>
> Users that know what "locale" means can scroll quickly, users that
> don't can look it up and learn.
>
> Does that make sense?
>
Your suggestion can simplify each man page, but our description make each man page clearer.
In Oracle Solaris's manpages and POSIX, when the function has exceptions,
exceptions are described in this function.
In Oracle Solaris's manpages, exceptions are described as follows:
MT-Safe with Exceptions
See the NOTES or USAGE sections of these pages for a description of the exceptions.
Safe with Exceptions
See the NOTES or USAGE sections of these pages for a description of the exceptions.
In POSIX, when the function has exceptions, exceptions are described in this function as follows:
The wcrtomb() function need not be thread-safe if called with a NULL ps argument.
The tmpnam() function need not be thread-safe if called with a NULL parameter.
I don't have strong preference. If Michael and other members prefer
your suggestion, I can modify my patches.
--
Best Regards,
Peng
> My further suggestion is to use the same ~20 exception notes as glibc e.g.
> race, const, locale, env, hostid, sigintr, init, lock, corrupt, heap,
> dlopen, plugin, i18ln, fd, mem, sig, term, and cwd (we also have
> !posix to indicate it is known not to conform with posix).
>
> The glibc manual is marked with them now, you can see iswblank here:
> http://www.gnu.org/software/libc/manual/html_mono/libc.html#index-iswblank-486
>
> Cheers,
> Carlos.
>
--
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
next prev parent reply other threads:[~2014-02-13 4:07 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-10 6:20 [PATCH] iswblank.3: ATTRIBUTES: Note function that is thread safe with exceptions Peng Haitao
[not found] ` <1392013239-31138-1-git-send-email-penght-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2014-02-10 10:06 ` Michael Kerrisk (man-pages)
2014-02-10 16:03 ` Carlos O'Donell
[not found] ` <CAE2sS1g5w0jZ04EovvQoW=Cta4ACdHWVus-5zo+vw1J7E1SnZg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-02-12 1:34 ` Peng Haitao
[not found] ` <52FACFBB.6070607-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2014-02-12 15:31 ` Carlos O'Donell
[not found] ` <CAE2sS1ijg2ef1WcswN0o+wmJOcgLDoCEbYrcNJyOxhS-HCxuSg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-02-13 4:07 ` Peng Haitao [this message]
[not found] ` <52FC44E7.1030000-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2014-02-13 4:48 ` Carlos O'Donell
[not found] ` <CAE2sS1g6ONVgapgZXh2XZJNCr+=JDEezpmPCnxLY2MfEpNfA2w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-02-22 9:18 ` Michael Kerrisk (man-pages)
2014-02-23 10:16 ` Michael Kerrisk (man-pages)
[not found] ` <CAKgNAkix8vTrKEV_vicpD2yH88NQmiSrMR9dgKoQ1u2NkqZexA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-02-25 17:28 ` Carlos O'Donell
[not found] ` <CAE2sS1gZJCZdEhY7hpF8=dP069JFTyxD-B-nY9va0OTFV8jN4w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-04-16 10:24 ` Peng Haitao
2014-06-11 8:30 ` Michael Kerrisk (man-pages)
[not found] ` <CAKgNAkh029iy5=7+N1RiA1_X9Zeiv_coci59bFN1y-oQmOJykA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-06-11 9:33 ` Peng Haitao
2014-06-11 14:59 ` Carlos O'Donell
[not found] ` <CAE2sS1j4sLeczF_gR94+mZ89bi-C=RMMikE=_cOvu9id7v5sHw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-06-11 20:31 ` Michael Kerrisk (man-pages)
[not found] ` <CAKgNAkj0b=-5EMqEWvxoq4_qfTH2wNOatkBmqVrXq5dOuQNHmw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-06-12 11:27 ` Michael Kerrisk (man-pages)
[not found] ` <CAKgNAki5UXmOTa=SW1GEYZTP1f5uMiTsrbkcYN+MuYZf6mA0qw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-06-12 12:16 ` Michael Kerrisk (man-pages)
[not found] ` <CAKgNAkgDFuwXDD=Rjn3KAutyuOAy_-71imhR5UGZOS9fcMSnew-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-06-12 14:02 ` Carlos O'Donell
2014-06-16 3:53 ` Michael Kerrisk (man-pages)
[not found] ` <539E6A32.7080605-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-06-16 7:49 ` Peng Haitao
[not found] ` <539EA198.9090309-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2014-06-17 5:40 ` Michael Kerrisk (man-pages)
[not found] ` <539FD4D3.40 10406@gmail.com>
[not found] ` <539FD4D3.4010406-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-06-17 5:47 ` Michael Kerrisk (man-pages)
[not found] ` <539FD660.7080503-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-06-17 8:24 ` Peng Haitao
2014-02-25 5:35 ` Peng Haitao
[not found] ` <530C2BA9.8070604-BthXqXjhjHXQFUHtdCDX3A@public.gmane.org>
2014-02-25 11:17 ` walter harms
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=52FC44E7.1030000@cn.fujitsu.com \
--to=penght-bthxqxjhjhxqfuhtdcdx3a@public.gmane.org \
--cc=aoliva-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=carlos-v2tUB8YBRSi3e3T8WW9gsA@public.gmane.org \
--cc=linux-man-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=mtk.manpages-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).