- Document the minor(3), major(3) and makedev(3) macro's. They also
apply to umajor() and uminor() in the kernel, but hopefully we'll sort
that out one day.
- Briefly dev2unit() inside the make_dev(9) manual page, since this is
now the preferred macro to obtain character device unit numbers inside
the kernel.
- Remove the device_ids(9) manual page. It contains highly inaccurate
information, such as a description of the nonexistent major().
Even though single linked lists allow items to be removed at constant time
(when the previous element is known), the queue macro's don't allow this.
Implement new REMOVE_NEXT() macro's. Because the REMOVE() macro's also
contain the same code, make it call REMOVE_NEXT().
The OpenBSD version of SLIST_REMOVE_NEXT() needs a reference to the list
head, even though it is unused. We'd better mimic this. The STAILQ version
also needs a reference to the list. This means the prototypes of both
macro's are the same.
Approved by: philip (mentor)
PR: kern/121117
the mutex locked. Also tweak the wording to make it more consistant
between pthread_cond_wait and pthread_cond_tiedwait.
Confirmed with the opengroup's web site that this is a valid return
value. Wording used specifically not that of opengroup's online man
pages.
MFC After: 1 week
Group's documentation is `/usr/share/examples/mdoc/POSIX-copyright',
not the one I copied from `/usr/share/examples/etc/bsd-copyright'.
Suggested by: simon
2nd pointy hat of the day: yours truly
the Open Group manpage for pthread_atfork(), available online at:
http://www.opengroup.org/onlinepubs/009695399/functions/pthread_atfork.html
which should be ok, since Daniel Eischen had mailed me about Open
Group manpages and the fact that they have granted permission to
FreeBSD to use their material. Any differences from the OG text are
my changes to the original manpage text submitted by Alex Vasylenko:
- In an effort to clean up the part that describes hooks and their
calling order, I used a list instead of a single paragraph for all the three
types of fork() hooks.
- After a short discussion with Dima Dorfman a long long time ago in a
far away galaxy, I changed the RETURN VALUES section to look more
like the rest of the pthread_xxx.3 manpages.
PR: docs/68201
Submitted by: Alex Vasylenko <lxv@omut.org>
to mistakes from day 1, it has always had semantics inconsistent with
SVR4 and its successors. In particular, given argument M:
- On Solaris and FreeBSD/{alpha,sparc64}, it clobbers the old flags
and *sets* the new flag word to M. (NetBSD, too?)
- On FreeBSD/{amd64,i386}, it *clears* the flags that are specified in M
and leaves the remaining flags unchanged (modulo a small bug on amd64.)
- On FreeBSD/ia64, it is not implemented.
There is no way to fix fpsetsticky() to DTRT for both old FreeBSD apps
and apps ported from other operating systems, so the best approach
seems to be to kill the function and fix any apps that break. I
couldn't find any ports that use it, and any such ports would already
be broken on FreeBSD/ia64 and Linux anyway.
By the way, the routine has always been undocumented in FreeBSD,
except for an MLINK to a manpage that doesn't describe it. This
manpage has stated since 5.3-RELEASE that the functions it describes
are deprecated, so that must mean that functions that it is *supposed*
to describe but doesn't are even *more* deprecated. ;-)
Note that fpresetsticky() has been retained on FreeBSD/i386. As far
as I can tell, no other operating systems or ports of FreeBSD
implement it, so there's nothing for it to be inconsistent with.
PR: 75862
Suggested by: bde