Newlines are not escaped anymore.
The 10 occurrence limit for the `s' command documented here has not existed
for a very long time (or never did exist).
Refer to environ(7) for description of COLUMNS instead of describing it
in-line. Document effects of locale environment variables in the same way.
Add an EXAMPLES section with three examples. Document the problem with
multibyte characters and the -d option in a BUGS section.
Add another example for using paste(1) since tjr seemed to want more examples
on IRC.  This one is to create a colon seperated list of directories from
find(1), suitable for use in the shell's PATH.
Add History section. sleep appeared in v4.
Sort sections, use Ex macro in Diagnostics section, point out that the first
example only works with csh(1).
When stat(2) fails, put the name of the component it failed on in the
warning message as well as the path argument.
Remove -j from synopsis. The form given in the synopsis was incorrect,
and it should not have been there at all since it is a deprecated option.
cvs -j -j gave me two copies of TARGET_VERSION and I didn't notice
it before committing.
Fix wording and spelling in the trapsignal() description.
Fix up the wording thoughout, and document locking.
Put geom_gpt.c under the GEOM option instead of having a special GEOM_GPT
option for it.
In tracking down an installation seg fault with then openoffice port
Martin Blapp determined that the elf dynamic loader was at fault.  In
particular, the loader uses alloca() to allocate a symbol cache on the
stack.  Normally this would work just fine, but if the loader is called
from a threaded program and the object being loaded is fairly large the
alloca() can blow away the thread stack and effect other nearby thread
stacks as well.  My testing showed that the symbol cache can be as large
as 250KBytes during the openoffice port build and install sequence.  Martin
was able to work around the problem by disabling the symbol cache
(cache = NULL;).  However, this solution is not adequate for commit because
it can cause an enormous cpu burden for applications which do a lot of
dynamic loading (e.g. like konqueror).

The solution is to use anonymous mmap() to temporarily allocate space to
hold the symbol cache.  In testing I found that replacing the alloca()
with mmap() has no observable degredation in performance.

It should be noted that this bug does not necessarily cause an immediate
crash but can instead result in long term corruption and instability in
applications that load modules from threads.  The bug is almost certainly
responsible for some of the instabilities found in konqueror, for example,
and possibly netscape too.

Sleuthing work by: Martin Blapp <mb@imp.ch>
X-MFC after:	Before or after the 4.6 release depending on the release engineers
- Whitespace only: use return statement consistentlt (return (foo), not
  return(foo)), kill extra blank names between function names;
- fix format string in printf(): devtoname() returns string, not pointer.
Lock up inpcb.

Submitted by:	Jennifer Yang <yangjihui@yahoo.com>
Correct a bug in the last commit.  The whole point of creating a 'done:'
goto target was so the cache could be freed.  So free the cache after
done: rather then before done: (!)

Submitted by:	Gavin Atkinson <gavin@ury.york.ac.uk>
Dillon's recent commits to the dynamic linker without running them
by me first have given me a good excuse to drop my MAINTAINERship.

MFC after:	1 week
Convert hit and miss counters to unsigned values.  Surely negative values
for either does not make sense.

PR:		(one small part of) 19720
ps(1) appeared in v4

Submitted by:	grog