diff --git a/man/man3/0intro.3 b/man/man3/0intro.3
new file mode 100644
index 0000000..e544cc8
--- /dev/null
+++ b/man/man3/0intro.3
@@ -0,0 +1,395 @@
+.TH INTRO 3
+.SH NAME
+intro \- introduction to library functions
+.SH SYNOPSIS
+.nf
+.B #include <u.h>
+.PP
+.B #include \fIany Unix headers\fR
+.PP
+.B #include <libc.h>
+.PP
+.B #include <auth.h>
+.PP
+.B #include <bio.h>
+.PP
+.B #include <draw.h>
+.PP
+.B #include <fcall.h>
+.PP
+.B #include <frame.h>
+.PP
+.B #include <mach.h>
+.PP
+.B #include <regexp.h>
+.PP
+.B #include <thread.h>
+.fi
+.SH DESCRIPTION
+This section describes functions
+in various libraries.
+For the most part, each library is defined by a single C include
+file, such as those listed above, and a single archive file containing
+the library proper.  The name of the archive is
+.BI \*9/lib/lib x .a \f1,
+where
+.I x
+is the base of the include file name, stripped of a leading
+.B lib
+if present.
+For example,
+.B <draw.h>
+defines the contents of library
+.BR \*9/lib/libdraw.a ,
+which may be abbreviated when named to the loader as
+.BR -ldraw .
+In practice, each include file contains a magic pragma
+that directs the loader to pick up the associated archive
+automatically, so it is rarely necessary to tell the loader
+which
+libraries a program needs;
+see
+.IR 9c (1).
+.PP
+The library to which a function belongs is defined by the
+header file that defines its interface.
+The `C library',
+.IR libc ,
+contains most of the basic subroutines such
+as
+.IR strlen .
+Declarations for all of these functions are
+in
+.BR <libc.h> ,
+which must be preceded by
+.RI ( needs )
+an include of
+.BR <u.h> .
+The graphics library,
+.IR draw ,
+is defined by
+.BR <draw.h> ,
+which needs
+.B <libc.h>
+and
+.BR <u.h> .
+The Buffered I/O library,
+.IR libbio ,
+is defined by
+.BR <bio.h> ,
+which needs
+.B <libc.h>
+and
+.BR <u.h> .
+The ANSI C Standard I/O library,
+.IR libstdio ,
+is defined by
+.BR <stdio.h> ,
+which needs
+.BR <u.h> .
+There are a few other, less commonly used libraries defined on
+individual pages of this section.
+.PP
+The include file
+.BR <u.h> ,
+a prerequisite of several other include files,
+declares the architecture-dependent and -independent types, including:
+.IR uchar ,
+.IR ushort ,
+and
+.IR ulong ,
+the unsigned integer types;
+.IR schar ,
+the signed char type;
+.I vlong
+and
+.IR uvlong ,
+the signed and unsigned very long integral types;
+.IR Rune ,
+the Unicode character type;
+.IR u8int ,
+.IR u16int ,
+.IR u32int ,
+and
+.IR u64int ,
+the unsigned integral types with specific widths;
+.IR jmp_buf ,
+the type of the argument to
+.I setjmp
+and 
+.IR longjmp ,
+plus macros that define the layout of
+.IR jmp_buf
+(see
+.IR setjmp (3));
+.\" definitions of the bits in the floating-point control register
+.\" as used by
+.\" .IR getfcr (2);
+and
+the macros
+.B va_arg
+and friends for accessing arguments of variadic functions (identical to the
+macros defined in
+.B <stdarg.h>
+in ANSI C).
+.PP
+Plan 9 and Unix use many similarly-named functions for different purposes:
+for example, Plan 9's
+.I dup
+is closer to (but not exactly) Unix's
+.IR dup2 .
+To avoid name conflicts,
+.B <libc.h>
+defines many of these names as preprocessor macros to add a
+.I p9
+prefix,
+so that
+.I dup
+becomes
+.IR p9dup .
+To disable this renaming,
+.B #define
+.B NOPLAN9DEFINES
+before including
+.BR <libc.h> .
+If Unix headers must be included in a program,
+they should be included after
+.BR <u.h> ,
+which sets important preprocessor directives
+(for example, to enable 64-bit file offsets),
+but before
+.BR <libc.h> ,
+to avoid renaming problems.
+.SS "Name space
+Files are collected into a hierarchical organization called a
+.I "file tree
+starting in a
+.I directory
+called the
+.IR root .
+File names, also called
+.IR paths ,
+consist of a number of
+.BR / -separated
+.I "path elements"
+with the slashes corresponding to directories.
+A path element must contain only printable
+characters (those outside the control spaces of
+.SM ASCII
+and Latin-1).
+A path element cannot contain a slash.
+.PP
+When a process presents a file name to Plan 9, it is
+.I evaluated
+by the following algorithm.
+Start with a directory that depends on the first
+character of the path:
+.L /
+means the root of the main hierarchy,
+and anything else means the process's current working directory.
+Then for each path element, look up the element
+in the directory, advance to that directory,
+do a possible translation (see below), and repeat.
+The last step may yield a directory or regular file.
+.SS "File I/O"
+Files are opened for input or output
+by
+.I open
+or
+.I create
+(see
+.IR open (3)).
+These calls return an integer called a
+.IR "file descriptor"
+which identifies the file
+to subsequent I/O calls,
+notably
+.IR read (3)
+and
+.IR write .
+The system allocates the numbers by selecting the lowest unused descriptor.
+They are allocated dynamically; there is no visible limit to the number of file
+descriptors a process may have open.
+They may be reassigned using
+.IR dup (3).
+File descriptors are indices into a
+kernel resident
+.IR "file descriptor table" .
+Each process has an associated file descriptor table.
+In threaded programs
+(see
+.IR thread (3)),
+the file descriptor table is shared by all the procs.
+.PP
+By convention,
+file descriptor 0 is the standard input,
+1 is the standard output,
+and 2 is the standard error output.
+With one exception, the operating system is unaware of these conventions;
+it is permissible to close file 0,
+or even to replace it by a file open only for writing,
+but many programs will be confused by such chicanery.
+The exception is that the system prints messages about broken processes
+to file descriptor 2.
+.PP
+Files are normally read or written in sequential order.
+The I/O position in the file is called the
+.IR "file offset"
+and may be set arbitrarily using the
+.IR seek (3)
+system call.
+.PP
+Directories may be opened like regular files.
+Instead of reading them with
+.IR read (3),
+use the
+.B Dir
+structure-based
+routines described in
+.IR dirread (3).
+The entry
+corresponding to an arbitrary file can be retrieved by
+.IR dirstat
+(see
+.IR stat (3))
+or
+.IR dirfstat ;
+.I dirwstat
+and
+.I dirfwstat
+write back entries, thus changing the properties of a file.
+.PP
+New files are made with
+.I create
+(see
+.IR open (3))
+and deleted with
+.IR remove (3).
+Directories may not directly be written;
+.IR create ,
+.IR remove ,
+.IR wstat ,
+and
+.I fwstat
+alter them.
+.PP
+.IR Pipe (3)
+creates a connected pair of file descriptors,
+useful for bidirectional local communication.
+.SS "Process execution and control"
+A new process is created
+when an existing one calls
+.IR fork (2).
+The new (child) process starts out with
+copies of the address space and most other attributes
+of the old (parent) process.
+In particular,
+the child starts out running
+the same program as the parent;
+.IR exec (3)
+will bring in a different one.
+.PP
+Each process has a unique integer process id;
+a set of open files, indexed by file descriptor;
+and a current working directory
+(changed by
+.IR chdir (2)).
+.PP
+Each process has a set of attributes \(em memory, open files,
+name space, etc. \(em that may be shared or unique.
+Flags to
+.IR rfork
+control the sharing of these attributes.
+.PP
+A process terminates by calling
+.IR exits (3).
+A parent process may call
+.IR wait (3)
+to wait for some child to terminate.
+A bit of status information
+may be passed from
+.I exits
+to
+.IR wait .
+On Plan 9, the status information is an arbitrary text string,
+but on Unix it is a single integer.
+The Plan 9 interface persists here, although the functionality does not.
+Instead, empty strings are converted to exit status 0 and non-empty strings to 1.
+.PP
+A process can go to sleep for a specified time by calling
+.IR sleep (3).
+.PP
+There is a
+.I notification
+mechanism for telling a process about events such as address faults,
+floating point faults, and messages from other processes.
+A process uses
+.IR notify (3)
+to register the function to be called (the
+.IR "notification handler" )
+when such events occur.
+.SS Multithreading
+Where possible according to the ANSI C standard,
+the main C library works properly in multiprocess programs;
+.IR malloc ,
+.IR print ,
+and the other routines use locks (see
+.IR lock (3))
+to synchronize access to their data structures.
+The graphics library defined in
+.B <draw.h>
+is also multi-process capable; details are in
+.IR graphics (3).
+In general, though, multiprocess programs should use some form of synchronization
+to protect shared data.
+.PP
+The thread library, defined in
+.BR <thread.h> ,
+provides support for multiprocess programs.
+It includes a data structure called a
+.B Channel
+that can be used to send messages between processes,
+and coroutine-like
+.IR threads ,
+which enable multiple threads of control within a single process.
+The threads within a process are scheduled by the library, but there is
+no pre-emptive scheduling within a process; thread switching occurs
+only at communication or synchronization points.
+.PP
+Most programs using the thread library
+comprise multiple processes
+communicating over channels, and within some processes,
+multiple threads.  Since I/O calls may block, a system
+call may block all the threads in a process.
+Therefore, a program that shouldn't block unexpectedly will use a process
+to serve the I/O request, passing the result to the main processes
+over a channel when the request completes.
+For examples of this design, see
+.IR ioproc (3)
+or
+.IR mouse (3).
+.SH SEE ALSO
+.IR nm (1), 
+.IR 9c (1)
+.SH DIAGNOSTICS
+Math functions in
+.I libc
+return
+special values when the function is undefined for the
+given arguments or when the value is not representable
+(see
+.IR nan (3)).
+.PP
+Some of the functions in
+.I libc
+are system calls and many others employ system calls in their implementation.
+All system calls return integers,
+with \-1 indicating that an error occurred;
+.IR errstr (3)
+recovers a string describing the error.
+Some user-level library functions also use the
+.I errstr
+mechanism to report errors.
+Functions that may affect the value of the error string are said to ``set
+.IR errstr '';
+it is understood that the error string is altered only if an error occurs.
diff --git a/man/man3/9p.3 b/man/man3/9p.3
index 1e153bf..109c452 100644
--- a/man/man3/9p.3
+++ b/man/man3/9p.3
@@ -109,13 +109,13 @@
 .B Fid
 structures are allocated one-to-one with uncompleted
 requests and active fids, and are described in
-.IR 9pfid (3).
+.IR 9p-fid (3).
 .PP
 The behavior of
 .I srv
 depends on whether there is a file tree
 (see
-.IR 9pfile (3))
+.IR 9p-file (3))
 associated with the server, that is,
 whether the
 .B tree
@@ -717,8 +717,8 @@
 option to increment
 .BR chatty9p .
 .SH EXAMPLES
-\*9/src/lib9p/ramfs.c
-is an example of simple single-threaded file servers.
+.B \*9/src/lib9p/ramfs.c
+is an example of a simple single-threaded file server.
 On Plan 9, see
 .IR archfs ,
 .IR cdfs ,
@@ -744,6 +744,6 @@
 .SH SOURCE
 .B \*9/src/lib9p
 .SH SEE ALSO
-.IR 9pfid (3),
-.IR 9pfile (3),
+.IR 9p-fid (3),
+.IR 9p-file (3),
 .IR intro (9p)
diff --git a/man/man3/9pclient.3 b/man/man3/9pclient.3
index b21676a..cb2725a 100644
--- a/man/man3/9pclient.3
+++ b/man/man3/9pclient.3
@@ -9,8 +9,8 @@
 .B #include <fcall.h>
 .PP
 .B #include <9pclient.h>
+.ta +\w'\fLCFsys* 'u
 .PP
-.ta +'\fLCFsys* 'u
 .B
 CFsys*	fsmount(int fd, char *aname)
 .PP
@@ -214,7 +214,7 @@
 as on Unix and Plan 9.
 Elements that are empty or
 dot
-.B ( . )
+.RB ( . )
 are ignored.
 .PP
 Once opened, these fids can be read and written using
diff --git a/man/man3/INDEX b/man/man3/INDEX
index 9c067d0..4739b17 100644
--- a/man/man3/INDEX
+++ b/man/man3/INDEX
@@ -1,3 +1,48 @@
+0intro 0intro.3
+intro 0intro.3
+9p-cmdbuf 9p-cmdbuf.3
+Cmdbuf 9p-cmdbuf.3
+lookupcmd 9p-cmdbuf.3
+parsecmd 9p-cmdbuf.3
+respondcmderror 9p-cmdbuf.3
+9p-fid 9p-fid.3
+Fid 9p-fid.3
+Fidpool 9p-fid.3
+Req 9p-fid.3
+Reqpool 9p-fid.3
+allocfid 9p-fid.3
+allocfidpool 9p-fid.3
+allocreq 9p-fid.3
+allocreqpool 9p-fid.3
+closefid 9p-fid.3
+closereq 9p-fid.3
+freefidpool 9p-fid.3
+freereqpool 9p-fid.3
+lookupfid 9p-fid.3
+lookupreq 9p-fid.3
+removefid 9p-fid.3
+removereq 9p-fid.3
+9p-file 9p-file.3
+File 9p-file.3
+Tree 9p-file.3
+alloctree 9p-file.3
+closedirfile 9p-file.3
+closefile 9p-file.3
+createfile 9p-file.3
+freetree 9p-file.3
+hasperm 9p-file.3
+opendirfile 9p-file.3
+readdirfile 9p-file.3
+removefile 9p-file.3
+walkfile 9p-file.3
+9p-intmap 9p-intmap.3
+Intmap 9p-intmap.3
+allocmap 9p-intmap.3
+caninsertkey 9p-intmap.3
+deletekey 9p-intmap.3
+freemap 9p-intmap.3
+insertkey 9p-intmap.3
+lookupkey 9p-intmap.3
 9p 9p.3
 Srv 9p.3
 dirread9p 9p.3
@@ -39,41 +84,6 @@
 fsversion 9pclient.3
 fswrite 9pclient.3
 nsmount 9pclient.3
-9pcmdbuf 9pcmdbuf.3
-Cmdbuf 9pcmdbuf.3
-lookupcmd 9pcmdbuf.3
-parsecmd 9pcmdbuf.3
-respondcmderror 9pcmdbuf.3
-9pfid 9pfid.3
-Fid 9pfid.3
-Fidpool 9pfid.3
-Req 9pfid.3
-Reqpool 9pfid.3
-allocfid 9pfid.3
-allocfidpool 9pfid.3
-allocreq 9pfid.3
-allocreqpool 9pfid.3
-closefid 9pfid.3
-closereq 9pfid.3
-freefidpool 9pfid.3
-freereqpool 9pfid.3
-lookupfid 9pfid.3
-lookupreq 9pfid.3
-removefid 9pfid.3
-removereq 9pfid.3
-9pfile 9pfile.3
-File 9pfile.3
-Tree 9pfile.3
-alloctree 9pfile.3
-closedirfile 9pfile.3
-closefile 9pfile.3
-createfile 9pfile.3
-freetree 9pfile.3
-hasperm 9pfile.3
-opendirfile 9pfile.3
-readdirfile 9pfile.3
-removefile 9pfile.3
-walkfile 9pfile.3
 Dx addpt.3
 Dy addpt.3
 Pt addpt.3
@@ -233,15 +243,11 @@
 announce dial.3
 dial dial.3
 dialparse dial.3
-hangup dial.3
 listen dial.3
 netmkaddr dial.3
 reject dial.3
 dirread dirread.3
 dirreadall dirread.3
-Disk disk.3
-disk disk.3
-opendisk disk.3
 ARROW draw.3
 Image draw.3
 _string draw.3
@@ -473,14 +479,6 @@
 targetname html.3
 toStr html.3
 validitems html.3
-Intmap intmap.3
-allocmap intmap.3
-caninsertkey intmap.3
-deletekey intmap.3
-freemap intmap.3
-insertkey intmap.3
-intmap intmap.3
-lookupkey intmap.3
 closeioproc ioproc.3
 iocall ioproc.3
 ioclose ioproc.3
@@ -927,9 +925,6 @@
 read read.3
 readn read.3
 write read.3
-RGB readcolmap.3
-readcolmap readcolmap.3
-writecolmap readcolmap.3
 regcomp regexp.3
 regcomplit regexp.3
 regcompnl regexp.3
@@ -939,15 +934,6 @@
 regsub regexp.3
 rregexec regexp.3
 rregsub regexp.3
-regcomp regexp9.3
-regcomplit regexp9.3
-regcompnl regexp9.3
-regerror regexp9.3
-regexec regexp9.3
-regexp9 regexp9.3
-regsub regexp9.3
-rregexec regexp9.3
-rregsub regexp9.3
 rfork rfork.3
 
 X509dump rsa.3
@@ -993,11 +979,6 @@
 runestrncpy runestrcat.3
 runestrrchr runestrcat.3
 runestrstr runestrcat.3
-openscsi scsi.3
-scsi scsi.3
-scsicmd scsi.3
-scsierror scsi.3
-scsiready scsi.3
 hmac_md5 sechash.3
 hmac_sha1 sechash.3
 md4 sechash.3
@@ -1125,7 +1106,6 @@
 threadintgrp thread.3
 threadkill thread.3
 threadkillgrp thread.3
-threadlinklibrary thread.3
 threadmain thread.3
 threadnotify thread.3
 threadpid thread.3
diff --git a/man/man3/atof.3 b/man/man3/atof.3
index f6da685..0da2237 100644
--- a/man/man3/atof.3
+++ b/man/man3/atof.3
@@ -144,3 +144,35 @@
 .I atol
 accept octal and hexadecimal numbers in the style of C,
 contrary to the ANSI specification.
+.PP
+.IR Atof ,
+.IR strtod ,
+.IR strtol ,
+.IR strtoul ,
+.IR strtoll ,
+and
+.IR strtoull
+are not provided:
+they are expected to be provided by the underlying system.
+.PP
+Because they are implemented in the fmt library,
+.I charstod
+and
+.I strtod
+are preprocessor macros defined as
+.I fmtcharstod
+and
+.IR fmtstrtod .
+.PP
+To avoid name conflicts with the underlying system,
+.IR atoi ,
+.IR atol ,
+and
+.I atoll
+are preprocessor macros defined as
+.IR p9atoi ,
+.IR p9atol ,
+and
+.IR p9atoll ;
+see
+.IR intro (3).
diff --git a/man/man3/bin.3 b/man/man3/bin.3
index 7606202..c888193 100644
--- a/man/man3/bin.3
+++ b/man/man3/bin.3
@@ -20,7 +20,7 @@
 void	*bingrow(Bin **bp, void *op, ulong osize,
 .br
 .B
-	ulong size, int clr);
+	    ulong size, int clr);
 .PP
 .B
 void	binfree(Bin **bp);
diff --git a/man/man3/bio.3 b/man/man3/bio.3
index 8260cc2..02f36ae 100644
--- a/man/man3/bio.3
+++ b/man/man3/bio.3
@@ -2,7 +2,7 @@
 .SH NAME
 Bopen, Bfdopen, Binit, Binits, Brdline, Brdstr, Bgetc, Bgetrune, Bgetd, Bungetc, Bungetrune, Bread, Bseek, Boffset, Bfildes, Blinelen, Bputc, Bputrune, Bprint, Bvprint, Bwrite, Bflush, Bterm, Bbuffered \- buffered input/output
 .SH SYNOPSIS
-.ta \w'Biobuf* 'u
+.ta \w'\fLBiobuf* 'u
 .B #include <u.h>
 .br
 .B #include <libc.h>
diff --git a/man/man3/complete.3 b/man/man3/complete.3
index 6ccf9da..52702ac 100644
--- a/man/man3/complete.3
+++ b/man/man3/complete.3
@@ -13,12 +13,12 @@
 .ta \w'    'u +\w'    'u +\w'    'u +\w'    'u +\w'    'u
 typedef struct Completion	Completion;
 struct Completion{
-	uchar advance;		/* whether forward progress has been made */
-	uchar complete;	/* whether the completion now represents a file or directory */
-	char *string;		/* the string to advance, suffixed " " or "/" for file or directory */
-	int nmatch;		/* number of files that matched */
-	int nfile;			/* number of files returned */
-	char **filename;	/* their names */
+	uchar advance;
+	uchar complete;
+	char *string;
+	int nmatch;
+	int nfile;
+	char **filename;
 };
 
 .fi
diff --git a/man/man3/ctime.3 b/man/man3/ctime.3
index 8b2f041..65ab1d4 100644
--- a/man/man3/ctime.3
+++ b/man/man3/ctime.3
@@ -90,9 +90,26 @@
 .SH BUGS
 The return values point to static data
 whose content is overwritten by each call.
-.br
+.PP
 Daylight Savings Time is ``normal'' in the Southern hemisphere.
-.br
+.PP
 These routines are not equipped to handle non-\c
 .SM ASCII
 text, and are provincial anyway.
+.PP
+To avoid name conflicts with the underlying system,
+.IR ctime ,
+.IR localtime ,
+.IR gmtime ,
+.IR asctime ,
+and
+.I tm2sec
+are preprocessor macros defined as
+.IR p9ctime ,
+.IR p9localtime ,
+.IR p9gmtime ,
+.IR p9asctime ,
+and
+.IR p9tm2sec ;
+see
+.IR intro (3).
diff --git a/man/man3/dial.3 b/man/man3/dial.3
index 36364f3..0c8c96a 100644
--- a/man/man3/dial.3
+++ b/man/man3/dial.3
@@ -1,6 +1,6 @@
 .TH DIAL 3
 .SH NAME
-dial, hangup, announce, listen, accept, reject, netmkaddr, dialparse \- make and break network connections
+dial, announce, listen, accept, reject, netmkaddr, dialparse \- make and break network connections
 .SH SYNOPSIS
 .B #include <u.h>
 .br
@@ -34,7 +34,10 @@
 .\" void freenetconninfo(NetConnINfo*)
 .PP
 .B
-int	dialparse(char *addr, char **net, char **unix, u32int *host, int *port)
+int   dialparse(char *addr, char **net, char **unix,
+.br
+.B
+          u32int *host, int *port)
 .SH DESCRIPTION
 For these routines,
 .I addr
@@ -310,3 +313,17 @@
 and
 .I listen
 return \-1 if they fail.
+.SH BUGS
+To avoid name conflicts with the underlying system,
+.IR dial ,
+.IR announce ,
+.IR listen ,
+.IR netmkaddr ,
+and
+.I reject
+are preprocessor macros defined as
+.IR p9dial ,
+.IR p9announce ,
+and so on;
+see
+.IR intro (3).
diff --git a/man/man3/dup.3 b/man/man3/dup.3
index a9378dc..392e6fe 100644
--- a/man/man3/dup.3
+++ b/man/man3/dup.3
@@ -31,8 +31,9 @@
 Sets
 .IR errstr .
 .SH BUGS
-.I Dup
-is a macro for
-.I p9dup
-to avoid name conflicts with the Unix function; see
+To avoid name conflicts with the underlying system,
+.I dup
+is a preprocessor macro defined as
+.IR p9dup ;
+see
 .IR intro (3).
diff --git a/man/man3/event.3 b/man/man3/event.3
index 5991a17..1a36538 100644
--- a/man/man3/event.3
+++ b/man/man3/event.3
@@ -382,3 +382,8 @@
 .IR plumb (3),
 .\" .IR cons (3),
 .IR draw (3)
+.SH BUGS
+.I Etimer
+and
+.I estart
+are unimplemented.
diff --git a/man/man3/exec.3 b/man/man3/exec.3
index 2c5b166..1a0a8a8 100644
--- a/man/man3/exec.3
+++ b/man/man3/exec.3
@@ -128,3 +128,14 @@
 This is a clumsy way to deal with Unix's lack of
 a union directory for
 .BR /bin .
+.PP
+To avoid name conflicts with the underlying system,
+.I exec
+and
+.I execl
+are preprocessor macros defined as
+.I p9exec
+and
+.IR p9execl ;
+see
+.IR intro (3).
diff --git a/man/man3/exits.3 b/man/man3/exits.3
index 62ea8d3..62c9e56 100644
--- a/man/man3/exits.3
+++ b/man/man3/exits.3
@@ -93,3 +93,14 @@
 Exit codes 97 through 99 are used by the thread library to signal
 internal synchronization errors between the main program
 and a proxy process that implements backgrounding.
+.PP
+To avoid name conflicts with the underlying system,
+.I atexit
+and
+.I atexitdont
+are preprocessor macros defined as
+.I p9atexit
+and
+.IR p9atexitdont ;
+see
+.IR intro (3).
diff --git a/man/man3/flate.3 b/man/man3/flate.3
index e7594b3..b7b1a19 100644
--- a/man/man3/flate.3
+++ b/man/man3/flate.3
@@ -8,7 +8,7 @@
 .br
 .B #include <flate.h>
 .PP
-.ta \w'ulongmm'u
+.ta \w'\fLulongmm'u +\w'\fL  'u
 .PP
 .B
 int	deflateinit(void)
@@ -17,37 +17,37 @@
 int	deflate(void *wr, int (*w)(void*,void*,int),
 .br
 .B
-	void *rr, int (*r)(void*,void*,int),
+		void *rr, int (*r)(void*,void*,int),
 .br
 .B
-	int level, int debug)
+		int level, int debug)
 .PP
 .B
 int	deflatezlib(void *wr, int (*w)(void*,void*,int),
 .br
 .B
-	void *rr, int (*r)(void*,void*,int),
+		void *rr, int (*r)(void*,void*,int),
 .br
 .B
-	int level, int debug)
+		int level, int debug)
 .PP
 .B
 int	deflateblock(uchar *dst, int dsize,
 .br
 .B
-	uchar *src, int ssize,
+		uchar *src, int ssize,
 .br
 .B
-	int level, int debug)
+		int level, int debug)
 .PP
 .B
 int	deflatezlibblock(uchar *dst, int dsize,
 .br
 .B
-	uchar *src, int ssize,
+		uchar *src, int ssize,
 .br
 .B
-	int level, int debug)
+		int level, int debug)
 .PP
 .B
 int	inflateinit(void)
@@ -56,25 +56,25 @@
 int	inflate(void *wr, int (*w)(void*, void*, int),
 .br
 .B
-	void *getr, int (*get)(void*))
+		void *getr, int (*get)(void*))
 .PP
 .B
 int	inflatezlib(void *wr, int (*w)(void*, void*, int),
 .br
 .B
-	void *getr, int (*get)(void*))
+		void *getr, int (*get)(void*))
 .PP
 .B
 int	inflateblock(uchar *dst, int dsize,
 .br
 .B
-	uchar *src, int ssize)
+		uchar *src, int ssize)
 .PP
 .B
 int	inflatezlibblock(uchar *dst, int dsize,
 .br
 .B
-	uchar *src, int ssize)
+		uchar *src, int ssize)
 .PP
 .B
 char	*flateerr(int error)
diff --git a/man/man3/fmtinstall.3 b/man/man3/fmtinstall.3
index d279bc8..da766d7 100644
--- a/man/man3/fmtinstall.3
+++ b/man/man3/fmtinstall.3
@@ -370,4 +370,3 @@
 .SH DIAGNOSTICS
 These routines return negative numbers or nil for errors and set
 .IR errstr .
-.SH BUGS
diff --git a/man/man3/frame.3 b/man/man3/frame.3
index 7dc9bc1..1e06380 100644
--- a/man/man3/frame.3
+++ b/man/man3/frame.3
@@ -75,7 +75,7 @@
 of editable text in a single font on raster displays, such as in
 .IR sam (1)
 and
-.IR rio (1).
+.IR 9term (1).
 Frames may hold any character except NUL (0).
 Long lines are folded and tabs are at fixed intervals.
 .PP
diff --git a/man/man3/genrandom.3 b/man/man3/genrandom.3
index bb6118c..ddf481e 100644
--- a/man/man3/genrandom.3
+++ b/man/man3/genrandom.3
@@ -22,8 +22,10 @@
 .I Genrandom
 fills a buffer with bytes from the X9.17 pseudo-random
 number generator.  The X9.17 generator is seeded by 24
-truly random bytes read from
-.BR /dev/random .
+truly random bytes read via
+.I truerand
+(see
+.IR rand (3)).
 .PP
 .I Prng
 uses the native
diff --git a/man/man3/getenv.3 b/man/man3/getenv.3
index a6d5795..a817b6e 100644
--- a/man/man3/getenv.3
+++ b/man/man3/getenv.3
@@ -35,8 +35,13 @@
 Sets
 .IR errstr .
 .SH BUGS
-Defined as macros for
+To avoid name conflicts with the underlying system,
+.I getenv
+and
+.I putenv
+are preprocessor macros defined as
 .I p9getenv
 and
-.I p9putenv
-to avoid name conflicts with Unix library calls.
+.IR p9putenv ;
+see
+.IR intro (3).
diff --git a/man/man3/getwd.3 b/man/man3/getwd.3
index b68eea4..245914f 100644
--- a/man/man3/getwd.3
+++ b/man/man3/getwd.3
@@ -23,8 +23,15 @@
 .SH SOURCE
 .B \*9/src/lib9/getwd.c
 .SH "SEE ALSO"
-.IR pwd (1),
+.IR pwd (1)
 .SH DIAGNOSTICS
 On error, zero is returned.
 .IR Errstr (3)
 may be consulted for more information.
+.SH BUGS
+To avoid name conflicts with the underlying system,
+.I getwd
+is a preprocessor macro defined as
+.IR p9getwd ;
+see
+.IR intro (3).
diff --git a/man/man3/graphics.3 b/man/man3/graphics.3
index 7e3a70b..4b39332 100644
--- a/man/man3/graphics.3
+++ b/man/man3/graphics.3
@@ -615,7 +615,7 @@
 \&...
 .EE
 .SH FILES
-.BR /lib/font/bit "    directory of fonts
+.BR \*9/font/bit "    directory of fonts
 .SH SOURCE
 .B \*9/src/libdraw
 .SH "SEE ALSO"
@@ -649,3 +649,7 @@
 .B white
 and
 .BR black .
+.PP
+These manual pages contain many references to
+the now-fictitious
+.BR /dev/draw .
diff --git a/man/man3/malloc.3 b/man/man3/malloc.3
index 8b79247..1cdff57 100644
--- a/man/man3/malloc.3
+++ b/man/man3/malloc.3
@@ -168,3 +168,18 @@
 and
 .I free
 detect such corruption, they abort.
+.PP
+To avoid name conflicts with the system versions of these functions,
+.IR malloc ,
+.IR realloc ,
+.IR calloc ,
+and
+.I free
+are preprocessor macros defined as
+.IR p9malloc ,
+.IR p9realloc ,
+.IR p9calloc ,
+and
+.IR p9free ;
+see
+.IR intro (3).
diff --git a/man/man3/memdraw.3 b/man/man3/memdraw.3
index 969fee0..ec299a2 100644
--- a/man/man3/memdraw.3
+++ b/man/man3/memdraw.3
@@ -449,7 +449,6 @@
 is unusual in using a subfont rather than a font,
 and in having no parameter to align the source.
 .PP
-.I Libmemdraw
-is archived into
+These functions are 
+archived into
 .IR libdraw .
-
diff --git a/man/man3/memlayer.3 b/man/man3/memlayer.3
index 57ab8af..da1d025 100644
--- a/man/man3/memlayer.3
+++ b/man/man3/memlayer.3
@@ -304,6 +304,6 @@
 .IR window (3),
 .IR draw (3)
 .SH BUGS
-.I Libmemlayer
-is archived into
+These functions
+are archived into
 .IR libdraw .
diff --git a/man/man3/mp.3 b/man/man3/mp.3
index c4ecb37..f0028c3 100644
--- a/man/man3/mp.3
+++ b/man/man3/mp.3
@@ -1,6 +1,6 @@
 .TH MP 3
 .SH NAME
-mpsetminbits, mpnew, mpfree, mpbits, mpnorm, mpcopy, mpassign, mprand, strtomp, mpfmt,mptoa, betomp, mptobe, letomp, mptole, mptoui, uitomp, mptoi, itomp, uvtomp, mptouv, vtomp, mptov, mpdigdiv, mpadd, mpsub, mpleft, mpright, mpmul, mpexp, mpmod, mpdiv, mpcmp, mpextendedgcd, mpinvert, mpsignif, mplowbits0, mpvecdigmuladd, mpvecdigmulsub, mpvecadd, mpvecsub, mpveccmp, mpvecmul, mpmagcmp, mpmagadd, mpmagsub, crtpre, crtin, crtout, crtprefree, crtresfree, mpfactorial \- extended precision arithmetic
+mpsetminbits, mpnew, mpfree, mpbits, mpnorm, mpcopy, mpassign, mprand, strtomp, mpfmt,mptoa, betomp, mptobe, letomp, mptole, mptoui, uitomp, mptoi, itomp, uvtomp, mptouv, vtomp, mptov, mpdigdiv, mpadd, mpsub, mpleft, mpright, mpmul, mpexp, mpmod, mpdiv, mpfactorial, mpcmp, mpextendedgcd, mpinvert, mpsignif, mplowbits0, mpvecdigmuladd, mpvecdigmulsub, mpvecadd, mpvecsub, mpveccmp, mpvecmul, mpmagcmp, mpmagadd, mpmagsub, crtpre, crtin, crtout, crtprefree, crtresfree \- extended precision arithmetic
 .SH SYNOPSIS
 .B #include <u.h>
 .br
@@ -108,6 +108,9 @@
 void	mpdiv(mpint *dividend, mpint *divisor,  mpint *quotient, mpint *remainder)
 .PP
 .B
+mpint*	mpfactorial(ulong n)
+.PP
+.B
 int	mpcmp(mpint *b1, mpint *b2)
 .PP
 .B
@@ -162,9 +165,6 @@
 void	crtresfree(CRTres *res)
 .PP
 .B
-mpint*	mpfactorial(ulong n)
-.PP
-.B
 mpint	*mpzero, *mpone, *mptwo
 .SH DESCRIPTION
 .PP
@@ -441,6 +441,10 @@
 .BR "quotient = dividend/divisor" .
 .BR "remainder = dividend % divisor" .
 .TP
+.I mpfactorial
+returns factorial of
+.IR n .
+.TP
 .I mpcmp
 returns -1, 0, or +1 as
 .I b1
@@ -575,9 +579,5 @@
 and
 .I CRTres
 structures respectively.
-.PP
-.I Mpfactorial
-returns the factorial of
-.IR n .
 .SH SOURCE
 .B \*9/src/libmp
diff --git a/man/man3/muldiv.3 b/man/man3/muldiv.3
index 3bc6dda..36eb7b9 100644
--- a/man/man3/muldiv.3
+++ b/man/man3/muldiv.3
@@ -7,7 +7,7 @@
 .B #include <libc.h>
 .PP
 .B
-long muldiv(long a, long b, long c)
+long  muldiv(long a, long b, long c)
 .PP
 .B
 ulong umuldiv(ulong a, ulong b, ulong c)
diff --git a/man/man3/mux.3 b/man/man3/mux.3
index e36763d..6c12542 100644
--- a/man/man3/mux.3
+++ b/man/man3/mux.3
@@ -7,6 +7,7 @@
 .nf
 .B
 .ta +4n
+.ft B
 struct Mux
 {
 	uint mintag;
diff --git a/man/man3/notify.3 b/man/man3/notify.3
index 616c655..63c182b 100644
--- a/man/man3/notify.3
+++ b/man/man3/notify.3
@@ -207,7 +207,7 @@
 .PP
 .RS 3n
 .nf
-.ta \w'\fLsys: write on closed pipe  \fP'u \w'system call address argument out of range   'u
+.ta \w'\fLsys: segmentation violation  \fP'u +\w'process requested to exit     'u
 \fINote\fP	\fIMeaning\fP	\fIUnix signal\fP
 \fLinterrupt\fP	user interrupt (DEL key)	SIGINTR
 \fLhangup\fP	I/O connection closed	SIGHUP
@@ -217,6 +217,8 @@
 \fLsys: kill\fP	process forced to exit	SIGKILL
 \fLsys: bus error\fP	bus error	SIGBUS
 \fLsys: segmentation violation\fP	segmentation violation	SIGSEGV
+\fLsys: write on closed pipe\fP	write on closed pipe	SIGPIPE
+\fLsys: child\fP	child wait status change	SIGCHLD
 .fi
 .RE
 .PP
diff --git a/man/man3/print.3 b/man/man3/print.3
index b1c8545..af3f752 100644
--- a/man/man3/print.3
+++ b/man/man3/print.3
@@ -1,18 +1,10 @@
 .TH PRINT 3
-.de EX
-.nf
-.ft B
-..
-.de EE
-.fi
-.ft R
-..
 .SH NAME
 print, fprint, sprint, snprint, seprint, smprint, runesprint, runesnprint, runeseprint, runesmprint, vfprint, vsnprint, vseprint, vsmprint, runevsnprint, runevseprint, runevsmprint \- print formatted output
 .SH SYNOPSIS
-.B #include <utf.h>
+.B #include <u.h>
 .PP
-.B #include <fmt.h>
+.B #include <libc.h>
 .PP
 .ta \w'\fLchar* 'u
 .B
@@ -72,7 +64,10 @@
 writes text to the standard output.
 .I Fprint
 writes to the named output
-file descriptor.
+file descriptor:
+a buffered form
+is described in
+.IR bio (3).
 .I Sprint
 places text
 followed by the NUL character
@@ -96,7 +91,7 @@
 bytes in
 .IR s .
 Its result is always NUL-terminated and holds the maximal
-number of characters that can fit.
+number of complete UTF-8 characters that can fit.
 .I Seprint
 is like
 .IR snprint ,
@@ -191,27 +186,26 @@
 .PP
 The numeric verbs
 .BR d ,
-.BR i ,
-.BR u ,
 .BR o ,
 .BR b ,
 .BR x ,
 and
 .B X
-format their arguments in decimal, decimal,
-unsigned decimal, octal, binary, hexadecimal, and upper case hexadecimal.
+format their arguments in decimal,
+octal, binary, hexadecimal, and upper case hexadecimal.
 Each interprets the flags
 .BR 0 ,
 .BR h ,
 .BR hh ,
 .BR l ,
+.BR u ,
 .BR + ,
 .BR - ,
 .BR , ,
 and
 .B #
 to mean pad with zeros,
-short, byte, long, always print a sign, left justified, commas every three digits,
+short, byte, long, unsigned, always print a sign, left justified, commas every three digits,
 and alternate format.
 Also, a space character in the flag
 position is like
@@ -221,12 +215,9 @@
 short nor long is specified,
 then the argument is an
 .BR int .
-If an unsigned verb is specified,
+If unsigned is specified,
 then the argument is interpreted as a
-positive number and no sign is output;
-space and
-.B +
-flags are ignored for unsigned verbs.
+positive number and no sign is output.
 If two
 .B l
 flags are given,
@@ -249,8 +240,8 @@
 .B o
 conversion, the number is preceded by a
 .B 0
-if it doesn't already begin with one.
-For non-zero numbers and
+if it doesn't already begin with one;
+for
 .B x
 conversion, the number is preceded by
 .BR 0x ;
@@ -345,7 +336,7 @@
 .PP
 The
 .B s
-verb copies a string
+verb copies a NUL-terminated string
 (pointer to
 .BR char )
 to the output.
@@ -397,9 +388,7 @@
 The
 .B r
 verb takes no arguments; it copies the error string returned by a call to
-.IR strerror (3)
-with an argument of
-.IR errno.
+.IR errstr (3).
 .PP
 Custom verbs may be installed using
 .IR fmtinstall (3).
@@ -414,12 +403,12 @@
 	char buf[1024], *out;
 	va_list arg;
 
-	out = vseprint(buf, buf+sizeof buf, "Fatal error: ");
+	out = seprint(buf, buf+sizeof buf, "Fatal error: ");
 	va_start(arg, msg);
 	out = vseprint(out, buf+sizeof buf, msg, arg);
 	va_end(arg);
 	write(2, buf, out-buf);
-	exit(1);
+	exits("fatal error");
 }
 .EE
 .SH SEE ALSO
@@ -438,9 +427,9 @@
 .B b
 and
 .B r
-are not in ANSI and some
-.B C9X
-verbs are missing.
+are not in ANSI and
+.B u
+is a flag here instead of a verb.
 Also, and distinctly not a bug,
 .I print
 and friends generate
@@ -449,8 +438,8 @@
 .SM ASCII.
 .PP
 There is no
-.BR runeprint ,
-.BR runefprint ,
+.IR runeprint ,
+.IR runefprint ,
 etc. because runes are byte-order dependent and should not be written directly to a file; use the
 UTF output of
 .I print
diff --git a/man/man3/pushtls.3 b/man/man3/pushtls.3
index 5af31d7..fa0a080 100644
--- a/man/man3/pushtls.3
+++ b/man/man3/pushtls.3
@@ -26,7 +26,7 @@
 uchar		*readcert(char *filename, int *pcertlen)
 .PP
 .B
-PEMchain	*readcertchain(char *filename)
+PEMchain		*readcertchain(char *filename)
 .PP
 .B
 Thumbprint*	initThumbprints(char *ok, char *crl)
diff --git a/man/man3/quote.3 b/man/man3/quote.3
index 7e547c0..ae6c6c2 100644
--- a/man/man3/quote.3
+++ b/man/man3/quote.3
@@ -165,3 +165,10 @@
 .IR malloc (3),
 .IR print (3),
 .IR strcat (3)
+.SH BUGS
+Because it is provided by the format library,
+.I doquote
+is a preprocessor macro defined as
+.IR fmtdoquote ;
+see
+.IR intro (3).
diff --git a/man/man3/rand.3 b/man/man3/rand.3
index d6032d8..7dcc606 100644
--- a/man/man3/rand.3
+++ b/man/man3/rand.3
@@ -156,9 +156,9 @@
 .IR x ,
 .RI 0≤ x < val ≤ 2\u\s732\s10\d-1.
 .SH SOURCE
-.B \*9/src/lib9/
+.B \*9/src/lib9
 .br
-.B \*9/src/libsec/port/
+.B \*9/src/libsec/port
 .SH "SEE ALSO
 .\" .IR cons (3),
 .IR mp (3)
@@ -167,3 +167,18 @@
 and
 .I ntruerand
 maintain a static file descriptor.
+.PP
+To avoid name conflicts with the underlying system,
+.IR rand ,
+.IR lrand ,
+.IR frand ,
+.IR nrand ,
+.IR lnrand ,
+and
+.I srand
+are preprocessor macros defined as
+.IR p9rand ,
+.IR p9lrand ,
+and so on;
+see
+.IR intro (3).
diff --git a/man/man3/regexp.3 b/man/man3/regexp.3
index 06733aa..069e1d2 100644
--- a/man/man3/regexp.3
+++ b/man/man3/regexp.3
@@ -113,22 +113,22 @@
 	union {
 	   char *sp;
 	   Rune *rsp;
-	};
+	} s;
 	union {
 	   char *ep;
 	   Rune *rep;
-	};
+	} e;
 } Resub;
 .EE
 .LP
 If
-.B match[0].sp
+.B match[0].s.sp
 is nonzero on entry,
 .I regexec
 starts matching at that point within
 .IR string .
 If
-.B match[0].ep
+.B match[0].e.ep
 is nonzero on entry,
 the last character matched is the one
 preceding that point.
diff --git a/man/man3/sechash.3 b/man/man3/sechash.3
index a6f2c0e..d8b1cd4 100644
--- a/man/man3/sechash.3
+++ b/man/man3/sechash.3
@@ -13,50 +13,51 @@
 .B
 DigestState*	md4(uchar *data, ulong dlen, uchar *digest,
 .B
-			 DigestState *state)
+			    DigestState *state)
 .PP
 .B
 DigestState*	md5(uchar *data, ulong dlen, uchar *digest,
 .B
-			 DigestState *state)
+			    DigestState *state)
 .PP
 .B
 char*		md5pickle(MD5state *state)
 .PP
 .B
-MD5state*	md5unpickle(char *p);
+MD5state*		md5unpickle(char *p);
 .PP
 .B
 DigestState*	sha1(uchar *data, ulong dlen, uchar *digest,
 .B
-			 DigestState *state)
+			    DigestState *state)
 .PP
 .B
 char*		sha1pickle(MD5state *state)
 .PP
 .B
-MD5state*	sha1unpickle(char *p);
+MD5state*		sha1unpickle(char *p);
 .PP
 .B
 DigestState*	hmac_md5(uchar *data, ulong dlen,
 .br
 .B
-			 uchar *key, ulong klen,
+			    uchar *key, ulong klen,
 .br
 .B
-			 uchar *digest, DigestState *state)
+			    uchar *digest, DigestState *state)
 .PP
 .B
 DigestState*	hmac_sha1(uchar *data, ulong dlen,
 .br
 .B
-			 uchar *key, ulong klen,
+			    uchar *key, ulong klen,
 .br
 .B
-			 uchar *digest, DigestState *state)
+			    uchar *digest, DigestState *state)
 .SH DESCRIPTION
 .PP
-We support several secure hash functions.  The output of the
+These functions implement
+the cryptographic hash functions MD4, MD5, and SHA1.  The output of the
 hash is called a
 .IR digest .
 A hash is secure if, given the hashed data and the digest,
diff --git a/man/man3/seek.3 b/man/man3/seek.3
index e6435f4..36c594c 100644
--- a/man/man3/seek.3
+++ b/man/man3/seek.3
@@ -44,3 +44,10 @@
 .SH DIAGNOSTICS
 Sets
 .IR errstr .
+.SH BUGS
+To avoid name conflicts with the underlying system,
+.I seek
+is a preprocessor macro defined as
+.IR p9seek ;
+see
+.IR intro (3).
diff --git a/man/man3/setjmp.3 b/man/man3/setjmp.3
index e2af559..1210c17 100644
--- a/man/man3/setjmp.3
+++ b/man/man3/setjmp.3
@@ -55,36 +55,6 @@
 and
 .I longjmp
 can also be used to switch stacks.
-Defined in
-.B </$objtype/u.h>
-are several macros that can be used to build
-.B jmp_bufs
-by hand.  The following code establishes a
-.B jmp_buf
-.i label
-that may be called by
-.I longjmp
-to begin execution in a function
-.BR f
-with 1024 bytes of stack:
-.IP
-.EX
-#include <u.h>
-#include <libc.h>
-
-jmp_buf label;
-#define NSTACK 1024
-char stack[NSTACK];
-
-void
-setlabel(void)
-{
-	label[JMPBUFPC] = ((ulong)f+JMPBUFDPC);
-	/* -2 leaves room for old pc and new pc in frame */
-	label[JMPBUFSP =
-	        (ulong)(&stack[NSTACK-2*sizeof(ulong*)]);
-}
-.EE
 .SH SOURCE
 .B \*9/src/lib9/jmp.c
 .SH SEE ALSO
@@ -94,3 +64,24 @@
 .I Notejmp
 cannot recover from an address trap or bus error (page fault) on the 680x0
 architectures.
+.PP
+To avoid name conflicts with the underlying system,
+.IR setjmp ,
+.IR longjmp ,
+.IR notejmp ,
+and
+.I jmp_buf
+are preprocessor macros defined as
+.IR p9setjmp ,
+.IR p9longjmp ,
+.IR p9notejmp ,
+and
+.IR p9jmp_buf ;
+see
+.IR intro (3).
+.PP
+.I P9setjmp
+is implemented as a preprocessor macro that calls
+.I sigsetjmp
+(see
+Unix's \fIsetjmp\fR(3)).
diff --git a/man/man3/sleep.3 b/man/man3/sleep.3
index 7df6c33..0afa71d 100644
--- a/man/man3/sleep.3
+++ b/man/man3/sleep.3
@@ -43,3 +43,14 @@
 .SH DIAGNOSTICS
 These functions set
 .IR errstr .
+.SH BUGS
+To avoid name conflicts with the underlying system,
+.I sleep
+and
+.I alarm
+are preprocessor macros defined as
+.I p9sleep
+and
+.IR p9alarm ;
+see
+.IR intro (3).
diff --git a/man/man3/string.3 b/man/man3/string.3
index e17906b..9b88e8d 100644
--- a/man/man3/string.3
+++ b/man/man3/string.3
@@ -117,7 +117,7 @@
 Using
 .B s->base
 directly is frowned upon since it exposes too much of the implementation.
-.SS "allocation and freeing
+.SS "Allocation and freeing
 .PP
 A string must be allocated before it can be used.
 One normally does this using
diff --git a/man/man3/subfont.3 b/man/man3/subfont.3
index b3ca89c..5e1b09a 100644
--- a/man/man3/subfont.3
+++ b/man/man3/subfont.3
@@ -104,7 +104,7 @@
 A number of subfonts are kept in external files.
 The convention for naming subfont files is:
 .IP
-.B /lib/font/bit/\fIname\fP/\fIclass\fP.\fIsize\fP.\fIdepth
+.B \*9/font/\fIname\fP/\fIclass\fP.\fIsize\fP.\fIdepth
 .PD
 .PP
 where
@@ -217,9 +217,9 @@
 to
 .IB min + s ->n-1\f1.
 .SH FILES
-.TF /lib/font/bit
+.TF \*9/font
 .TP
-.B /lib/font/bit
+.B \*9/font
 bitmap font file tree
 .SH SOURCE
 .B \*9/src/libdraw
diff --git a/man/man3/thread.3 b/man/man3/thread.3
index 50bcb4e..39fa53a 100644
--- a/man/man3/thread.3
+++ b/man/man3/thread.3
@@ -33,7 +33,6 @@
 threadintgrp,
 threadkill,
 threadkillgrp,
-threadlinklibrary,
 threadmain,
 threadnotify,
 threadid,
@@ -46,14 +45,6 @@
 yield \- thread and proc management
 .SH SYNOPSIS
 .PP
-.de EX
-.nf
-.ft B
-..
-.de EE
-.fi
-.ft R
-..
 .EX
 .ta 4n +4n +4n +4n +4n +4n +4n
 #include <u.h>
@@ -88,8 +79,6 @@
 void	threadmain(int argc, char *argv[])
 int	mainstacksize
 int	proccreate(void (*fn)(void*), void *arg, uint stacksize)
-int	procrfork(void (*fn)(void*), void *arg, uint stacksize,
-		int rforkflag)
 int	threadcreate(void (*fn)(void*), void *arg, uint stacksize)
 void	threadexits(char *status)
 void	threadexitsall(char *status)
@@ -393,6 +382,7 @@
 fd[1] = 1;
 fd[2] = 2;
 .EE
+.LP
 to use the current standard files.  The correct code is
 .IP
 .EX
@@ -656,20 +646,6 @@
 .IR intro (3),
 .IR ioproc (3)
 .SH BUGS
-A program that intends to use the thread library
-but does not call any of its functions will not cause Unix linkers
-to link the thread library, resulting in the unintelligible error:
-.IP
-.EX
-\*9/lib/lib9.a(main.o)(.text+0x17): In function `main':
-\*9/src/lib9/main.c:10: undefined reference to `p9main'
-.EE
-.LP
-or similar.  To force the thread library to be linked properly in such cases,
-insert a call to the no-op function
-.I threadlinklibrary
-somewhere in your program.
-.PP
 To avoid name conflicts,
 .IR alt ,
 .IR nbrecv ,
@@ -689,10 +665,11 @@
 .IR chanalt ,
 .IR channbrecv ,
 and so on.
-Similarly,
-.I yield
+.I Yield
 is defined as a macro that expands to
 .IR threadyield .
+See
+.IR intro (3).
 .PP
 The implementation of
 .I threadnotify
diff --git a/man/man3/time.3 b/man/man3/time.3
index 9bf2db3..dfcafaf 100644
--- a/man/man3/time.3
+++ b/man/man3/time.3
@@ -31,3 +31,14 @@
 .SH DIAGNOSTICS
 These functions set
 .IR errstr .
+.SH BUGS
+To avoid name conflicts with the underlying system,
+.I time
+and
+.I nsec
+are preprocessor macros defined as
+.I p9time
+and
+.IR p9nsec ;
+see
+.IR intro (3).
diff --git a/man/man3/wait.3 b/man/man3/wait.3
index 445f29c..28d5d73 100644
--- a/man/man3/wait.3
+++ b/man/man3/wait.3
@@ -144,3 +144,16 @@
 .SH DIAGNOSTICS
 These routines set
 .IR errstr .
+.SH BUGS
+To avoid name conflicts with the underlying system,
+.IR wait ,
+.IR waitpid ,
+and
+.I waitfor
+are preprocessor macros defined as
+.IR p9wait ,
+.IR p9waitpid ,
+and
+.IR p9waitfor ;
+see 
+.IR intro (3).
