The _sycallX macros as described in the intro(2) man page are no longer defined in /usr/include/linux/unistd.h (or anywhere else for that matter). Some man pages like gettid still refer to the _syscall macros, although they also mention that syscall(2) "may be preferable" and point you to intro(2), which mostly talks about the _syscallX macros. It's a little confusing to say the least. These macros were still defined on RHEL 4. I've checked a couple of other recent distributions, and the _syscallX macros are still being defined (albeit in /usr/include/asm-XXX/unistd.h). Was the removal of these macro definitions from RHEL 5 deliberate or an oversight? To avoid confusion, I suggest that either the _syscallX macros should be defined, or the man pages should be updated to remove all references to the _syscallX macros. Here are the man pages I could find that still refer to these macros: /usr/share/man/man2/clone.2.gz /usr/share/man/man2/getdents.2.gz /usr/share/man/man2/gettid.2.gz /usr/share/man/man2/intro.2.gz /usr/share/man/man2/ioprio_set.2.gz /usr/share/man/man2/llseek.2.gz /usr/share/man/man2/mmap2.2.gz /usr/share/man/man2/modify_ldt.2.gz /usr/share/man/man2/mq_getsetattr.2.gz /usr/share/man/man2/pivot_root.2.gz /usr/share/man/man2/readdir.2.gz /usr/share/man/man2/setup.2.gz /usr/share/man/man2/sysctl.2.gz /usr/share/man/man2/syslog.2.gz /usr/share/man/man2/tkill.2.gz
Argh, I mistyped _syscallX in the summary line, so a search won't find it. If there is a way to fix this typo, please do so. There is also an instance of this typo in the opening sentence of the description. Sorry about that...
Whatever 'recent' distributions you checked, they're not up to date. The _syscallX macros were removed from the upstream kernel. Any distribution which still has them, shouldn't. Reassigning to man-pages.
The upstream man-pages will be fixed in release 2.55.
the last version from May 29, 2007 is 2.51, and it still refers to the _syscallX macros
(In reply to comment #3) > The upstream man-pages will be fixed in release 2.55. Indeed, release 2.55 fixes all occurences, with one exception: intro.2 Michael, do you have capacities to look at it?
Fixed in man-pages-2.39-10.el5
Looking at this bug report, I see that I had not fixed setup(2). This is fixed now. Likewise, I have rewritten intro.2 somewhat to note that _syscallN is historic. Fixes will be in man-pages-2.61. Michael Kerrisk uspstream man-pages maintaner
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on the solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2007-0529.html