]> git.ipfire.org Git - thirdparty/man-pages.git/commitdiff
_syscall.2, capget.2, ioprio_set.2, semop.2, send.2, ctime.3, dysize.3, fenv.3, fmtms...
authorMichael Kerrisk <mtk.manpages@gmail.com>
Thu, 17 Aug 2017 21:40:17 +0000 (23:40 +0200)
committerMichael Kerrisk <mtk.manpages@gmail.com>
Thu, 17 Aug 2017 21:40:17 +0000 (23:40 +0200)
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
74 files changed:
man2/_syscall.2
man2/capget.2
man2/ioprio_set.2
man2/semop.2
man2/send.2
man3/ctime.3
man3/dysize.3
man3/fenv.3
man3/fmtmsg.3
man3/ftok.3
man3/ftw.3
man3/getaddrinfo.3
man3/getgrent_r.3
man3/gethostbyname.3
man3/getopt.3
man3/getpw.3
man3/getpwent_r.3
man3/getsubopt.3
man3/getutent.3
man3/glob.3
man3/if_nameindex.3
man3/inet.3
man3/lseek64.3
man3/malloc_hook.3
man3/mbrtowc.3
man3/mkstemp.3
man3/mq_receive.3
man3/mq_send.3
man3/posix_spawn.3
man3/putgrent.3
man3/putpwent.3
man3/qsort.3
man3/raise.3
man3/rand.3
man3/rtime.3
man3/setaliasent.3
man3/setbuf.3
man3/shm_open.3
man3/significand.3
man3/sigqueue.3
man3/statvfs.3
man3/strfromd.3
man3/strptime.3
man3/strtol.3
man3/strtoul.3
man3/termios.3
man3/tgamma.3
man3/timeradd.3
man3/tsearch.3
man3/tzset.3
man3/updwtmp.3
man3/usleep.3
man3/wcstok.3
man4/console_codes.4
man4/hd.4
man4/hpsa.4
man4/mem.4
man4/null.4
man4/ram.4
man4/sd.4
man4/ttyS.4
man5/filesystems.5
man5/group.5
man5/passwd.5
man5/shells.5
man5/termcap.5
man5/ttytype.5
man5/tzfile.5
man5/utmp.5
man7/ascii.7
man7/bootparam.7
man7/complex.7
man7/cpuset.7
man7/epoll.7

index 2a14278288ac8f9fc2f0667cd95b71b30b9819b5..11230c704b683d58e04d336069fdbbc4253b78f6 100644 (file)
@@ -50,10 +50,12 @@ You need to know how many arguments, their types,
 and the function return type.
 There are seven macros that make the actual call into the system easier.
 They have the form:
-.sp
-.RS
+.PP
+.in +4n
+.EX
 .RI _syscall X ( type , name , type1 , arg1 , type2 , arg2 ,...)
-.RE
+.EE
+.in
 .PP
 where
 .IP
index 4dba136654bb12f293bb0776fa8c3716ec1043be..594ea3aca69df346fb7797f2716dea29218069f4 100644 (file)
@@ -83,7 +83,7 @@ typedef struct __user_cap_data_struct {
    __u32 inheritable;
 } *cap_user_data_t;
 .EE
-.in -4n
+.in
 .PP
 The
 .IR effective ,
index 67dd4999af6b588a086fa531cea69d8181af47fd..8b67bbab593422bb9ae001b67a1cbdbf105172e9 100644 (file)
@@ -248,14 +248,14 @@ One can view the current I/O scheduler via the
 filesystem.
 For example, the following command
 displays a list of all schedulers currently loaded in the kernel:
-.sp
-.RS
-.nf
+.PP
+.in +4n
+.EX
 .RB "$" " cat /sys/block/sda/queue/scheduler"
 noop anticipatory deadline [cfq]
-.fi
-.RE
-.sp
+.EE
+.in
+.PP
 The scheduler surrounded by brackets is the one actually
 in use for the device
 .RI ( sda
@@ -267,14 +267,15 @@ scheduler for the
 .I sda
 device to
 .IR cfq :
-.sp
-.RS
-.nf
+.PP
+.in +4n
+.EX
 .RB "$" " su"
 Password:
 .RB "#" " echo cfq > /sys/block/sda/queue/scheduler"
-.fi
-.RE
+.EE
+.in
+.\"
 .SS The Completely Fair Queuing (CFQ) I/O scheduler
 Since version 3 (also known as CFQ Time Sliced), CFQ implements
 I/O nice levels similar to those
index e9f9aad0341e6f5f84354d0c9da8965258fb9944..f5a4f4ec2862c057beb3eb7fe7bf18635e6b2400 100644 (file)
@@ -57,17 +57,16 @@ _GNU_SOURCE
 .SH DESCRIPTION
 Each semaphore in a System\ V semaphore set
 has the following associated values:
-.sp
+.PP
 .in +4n
 .nf
 unsigned short  semval;   /* semaphore value */
 unsigned short  semzcnt;  /* # waiting for zero */
 unsigned short  semncnt;  /* # waiting for increase */
 pid_t           sempid;   /* PID of process that last
-                             modified semaphore value */
-.sp
 .in -4n
 .fi
+.PP
 .BR semop ()
 performs operations on selected semaphores in the set indicated by
 .IR semid .
@@ -86,7 +85,7 @@ containing the following members:
 unsigned short sem_num;  /* semaphore number */
 short          sem_op;   /* semaphore operation */
 short          sem_flg;  /* operation flags */
-.in -4n
+.in
 .fi
 .PP
 Flags recognized in
index 286c1eba80788ab9517990ece0091b91056ad292..13fe1d76bedab7d37869897fc894877787b904a7 100644 (file)
@@ -328,7 +328,7 @@ or search permission is denied for one of the directories
 the path prefix.
 (See
 .BR path_resolution (7).)
-.sp
+.IP
 (For UDP sockets) An attempt was made to send to a
 network/broadcast address as though it was a unicast address.
 .TP
index 15c85171e97359b3bd350add9c3a6bdb6300aa33..bb1b4a6fddc38b25cc9fcada9bd1c78ece8f8391 100644 (file)
@@ -414,7 +414,6 @@ The glibc version of \fIstruct tm\fP has additional fields
 .PP
 .in +4n
 .EX
-.sp
 const char *tm_zone;      /* Timezone abbreviation */
 .EE
 .in
index a906d5b2320887bc3519104af2714da304e7157c..1b2796ca2505f21d2c512f134987c40c12d3eedd 100644 (file)
@@ -44,9 +44,13 @@ Feature Test Macro Requirements for glibc (see
 .SH DESCRIPTION
 The function returns 365 for a normal year and 366 for a leap year.
 The calculation for leap year is based on:
-.sp
+.PP
+.in +4n
+.EX
 (year) %4 == 0 && ((year) %100 != 0 || (year) %400 == 0)
-.sp
+.EE
+.in
+.PP
 The formula is defined in the macro
 .I __isleap(year)
 also found in
index 40c6c1bf438fe6f6d44e10b2933322852459cce1..1c8a8b10007fc21a23b74e7ac3dc67a3ebbcdaba 100644 (file)
@@ -315,20 +315,18 @@ and
 to set individual floating-point traps, and
 .BR fegetexcept ()
 to query the state.
-.sp
+.PP
 .nf
+.EX
 .BR "#define _GNU_SOURCE" "         /* See feature_test_macros(7) */"
-.br
 .B "#include <fenv.h>"
 .sp
 .BI "int feenableexcept(int " excepts );
-.br
 .BI "int fedisableexcept(int " excepts );
-.br
 .B "int fegetexcept(void);"
-.br
+.EE
 .fi
-.LP
+.PP
 The
 .BR feenableexcept ()
 and
index 59c1756ff638d00d065ee710885b84f85d7a4ddb..a7a7b1aea54acfb33861fec616ca6e23e3cbd9fb 100644 (file)
@@ -80,8 +80,7 @@ is a synonym for
 The
 .I classification
 argument is the sum of values describing 4 types of information.
-.br
-.sp
+.PP
 The first value defines the output channel.
 .TP 12n
 .B MM_PRINT
@@ -187,19 +186,19 @@ print nothing.
 If the user puts
 .B SEV_LEVEL
 with a format like
-.sp
+.PP
 .RS
 SEV_LEVEL=[description[:description[:...]]]
 .RE
-.sp
+.PP
 in the environment of the process before the first call to
 .BR fmtmsg (),
 where each description is of the form
-.sp
+.PP
 .RS
 severity-keyword,level,printstring
 .RE
-.sp
+.PP
 then
 .BR fmtmsg ()
 will also accept the indicated values for the level (in addition to
index 657dcda67e0f4e7092aab5dffadfb8137ee46ef3..859a05f1322cf8e8e5da8ac15aa9d3b60d2928bf 100644 (file)
@@ -83,10 +83,12 @@ T}  Thread safety   MT-Safe
 POSIX.1-2001, POSIX.1-2008.
 .SH NOTES
 On some ancient systems, the prototype was:
-.sp
-.RS
+.PP
+.in +4n
+.EX
 .BI "key_t ftok(char *" pathname ", char " proj_id );
-.RE
+.EE
+.in
 .PP
 Today,
 .I proj_id
index 7af24dc101caa7cd52d0cfa18b2d029418104d38..e9a358a7c9f905f1b362b98845bb59f17536e517 100644 (file)
@@ -311,7 +311,7 @@ If set, stay within the same filesystem
 If set, do not follow symbolic links.
 (This is what you want.)
 If not set, symbolic links are followed, but no file is reported twice.
-.sp
+.IP
 If \fBFTW_PHYS\fP is not set, but \fBFTW_DEPTH\fP is set,
 then the function
 .IR fn ()
index d7bf8b650c61c0dcda4fa9f4fea37b8ea9c7e3c9..77376fbc10f51ac41dbfcf46e5667d1fd637b3c1 100644 (file)
@@ -116,8 +116,8 @@ struct addrinfo {
     char            *ai_canonname;
     struct addrinfo *ai_next;
 };
-.fi
 .in
+.fi
 .PP
 The
 .I hints
index 452df644c004c8984080e47aa6b33174953c0ae9..274b2aad1a3fb035c19b2f55ba50c3432ca386eb 100644 (file)
@@ -151,28 +151,28 @@ the POSIX version of functions like
 .BR getpwnam_r (3).
 Other systems use the prototype
 .sp
-.nf
 .in +4n
+.nf
 struct group *getgrent_r(struct group *grp, char *buf,
                          int buflen);
-.in
 .fi
+.in
 .sp
 or, better,
 .sp
-.nf
 .in +4n
+.nf
 int getgrent_r(struct group *grp, char *buf, int buflen,
                FILE **gr_fp);
-.in
 .fi
+.in
 .SH NOTES
 The function
 .BR getgrent_r ()
 is not really reentrant since it shares the reading position
 in the stream with all other threads.
 .SH EXAMPLE
-.nf
+.EX
 #define _GNU_SOURCE
 #include <grp.h>
 #include <stdio.h>
@@ -202,7 +202,7 @@ main(void)
     endgrent();
     exit(EXIT_SUCCESS);
 }
-.fi
+.EE
 .\" perhaps add error checking - should use strerror_r
 .\" #include <errno.h>
 .\" #include <stdlib.h>
index 9859cfdf3aad0a31805cb0bef033aab5b67c7e9d..0b415b0ceaa01dbcb66e904580635022b99c9dc3 100644 (file)
@@ -261,7 +261,6 @@ The \fIhostent\fP structure is defined in \fI<netdb.h>\fP as follows:
 .sp
 .in +4n
 .nf
-.ne 7
 struct hostent {
     char  *h_name;            /* official name of host */
     char **h_aliases;         /* alias list */
index 2900b0c66a54ed9f32def5eea19e15e2c3cae7f0..c51c2bf8ab185dd3b81e3c15c50f8ea4949c0bec 100644 (file)
@@ -227,9 +227,9 @@ is a pointer to the first element of an array of
 declared in
 .I <getopt.h>
 as
+.PP
 .in +4n
 .nf
-.sp
 struct option {
     const char *name;
     int         has_arg;
@@ -402,8 +402,8 @@ to handle two program options:
 with no associated value; and
 .IR "\-t val" ,
 which expects an associated value.
-.nf
-.sp
+.PP
+.EX
 #include <unistd.h>
 #include <stdlib.h>
 #include <stdio.h>
@@ -447,13 +447,13 @@ main(int argc, char *argv[])
 
     exit(EXIT_SUCCESS);
 }
-.fi
+.EX
 .SS getopt_long()
 The following example program illustrates the use of
 .BR getopt_long ()
 with most of its features.
-.nf
-.sp
+.PP
+.EE
 #include <stdio.h>     /* for printf */
 #include <stdlib.h>    /* for exit */
 #include <getopt.h>
@@ -532,7 +532,7 @@ main(int argc, char **argv)
 
     exit(EXIT_SUCCESS);
 }
-.fi
+.EE
 .SH SEE ALSO
 .BR getopt (1),
 .BR getsubopt (3)
index 9d6b121d3b52514a3b7d2bcf45b3fd4069112cb1..dfdc259e072d189dd09409db5f0ee8b85953e93d 100644 (file)
@@ -46,10 +46,12 @@ The
 function reconstructs the password line entry for
 the given user ID \fIuid\fP in the buffer \fIbuf\fP.
 The returned buffer contains a line of format
-.sp
-.RS
+.PP
+.in +4n
+.EE
 .B name:passwd:uid:gid:gecos:dir:shell
-.RE
+.EE
+.in
 .PP
 The \fIpasswd\fP structure is defined in \fI<pwd.h>\fP as follows:
 .sp
index 752c69b9e18c336e4e369bc3d4388869743f0877..0a1db7e5be428f49c35a3eff1994c93e741e4c57 100644 (file)
@@ -153,12 +153,12 @@ the POSIX version of functions like
 .BR getpwnam_r (3).
 Other systems use the prototype
 .sp
-.nf
 .in +4n
+.nf
 struct passwd *
 getpwent_r(struct passwd *pwd, char *buf, int buflen);
-.in
 .fi
+.in
 .sp
 or, better,
 .sp
@@ -175,7 +175,7 @@ The function
 is not really reentrant since it shares the reading position
 in the stream with all other threads.
 .SH EXAMPLE
-.nf
+.EX
 #define _GNU_SOURCE
 #include <pwd.h>
 #include <stdio.h>
@@ -199,7 +199,7 @@ main(void)
     endpwent();
     exit(EXIT_SUCCESS);
 }
-.fi
+.EE
 .\" perhaps add error checking - should use strerror_r
 .\" #include <errno.h>
 .\" #include <stdlib.h>
index deca6bc7ec22f9251b7633b54ef49e05122ed939..cb79812cf9a68740e1f45947036b347bafd2ea76 100644 (file)
@@ -61,9 +61,11 @@ which is separated from the suboption name by an equal sign.
 The following is an example of the kind of string
 that might be passed in
 .IR optionp :
-.sp
+.PP
 .in +4n
+.EX
 .B ro,name=xyz
+.EE
 .in
 .PP
 The
index 582b564347c137e06596ab58455d9ac32a62ac6a..d3ced4394cc2f0ccaa5c6673b744747b8b7e4723 100644 (file)
@@ -225,20 +225,19 @@ with the prototype given above for
 All these functions are obsolete now on non-Linux systems.
 POSIX.1-2001 and POSIX.1-2008, following SUSv1,
 does not have any of these functions, but instead uses
-.sp
+.PP
+.in +4n
+.EX
 .B #include <utmpx.h>
-.sp
+.PP
 .B struct utmpx *getutxent(void);
-.br
 .B struct utmpx *getutxid(const struct utmpx *);
-.br
 .B struct utmpx *getutxline(const struct utmpx *);
-.br
 .B struct utmpx *pututxline(const struct utmpx *);
-.br
 .B void setutxent(void);
-.br
 .B void endutxent(void);
+.EE
+.in
 .PP
 These functions are provided by glibc,
 and perform the same task as their equivalents without the "x", but use
@@ -268,20 +267,21 @@ is an alias for
 .SS Glibc notes
 The above functions are not thread-safe.
 Glibc adds reentrant versions
-.sp
-.nf
+.PP
+.in +4n
+.EX
 .B #include <utmp.h>
-.sp
+.PP
 .BI "int getutent_r(struct utmp *" ubuf ", struct utmp **" ubufp );
-.sp
+.PP
 .BI "int getutid_r(struct utmp *" ut ,
 .BI "              struct utmp *" ubuf ", struct utmp **" ubufp );
-.sp
+.PP
 .BI "int getutline_r(struct utmp *" ut ,
 .BI "                struct utmp *" ubuf ", struct utmp **" ubufp );
-.fi
-.sp
-.in -4n
+.EE
+.in
+.PP
 Feature Test Macro Requirements for glibc (see
 .BR feature_test_macros (7)):
 .in
index 767e2cd64a79b3f64f5da8717f15a30f492e8ddc..73eac9d2680a28a55e7bec754036c9822bf77ccb 100644 (file)
@@ -333,7 +333,9 @@ These will store their error code in
 One example of use is the following code, which simulates typing
 .sp
 .in +4n
+.EX
 ls \-l *.c ../*.c
+.EE
 .in
 .sp
 in the shell:
index 477fb0a58dee01c5429ab9c444cc529941c9df29..06391172af7f9242733397a4bdc39352b2fce8d3 100644 (file)
@@ -45,10 +45,10 @@ The
 structure contains at least the following entries:
 .sp
 .in +4n
-.nf
-    unsigned int if_index; /* Index of interface (1, 2, ...) */
-    char        *if_name;  /* Null-terminated name ("eth0", etc.) */
-.fi
+.EX
+unsigned int if_index; /* Index of interface (1, 2, ...) */
+char        *if_name;  /* Null-terminated name ("eth0", etc.) */
+.EE
 .in
 .PP
 The
index e39e317f4a09c60f3863210d28922f67620429c9..168c352585b1614d1b5191b621cb71a8b8fd4242 100644 (file)
@@ -212,13 +212,13 @@ is defined in
 as:
 .sp
 .in +4n
-.nf
+.EX
 typedef uint32_t in_addr_t;
 
 struct in_addr {
     in_addr_t s_addr;
 };
-.fi
+.EE
 .in
 .SH ATTRIBUTES
 For an explanation of the terms used in this section, see
index 6579ab819af7918403cf419dcf0e30b64f5507e0..c15afd46906821417355ad49e150d340bc42ded1 100644 (file)
@@ -62,35 +62,35 @@ and
 .BR _llseek (2).
 .SS lseek()
 Prototype:
-.nf
-.sp
+.PP
 .in +4n
+.EX
 .BI "off_t lseek(int " fd ", off_t " offset ", int " whence );
+.EE
 .in
-.fi
-.sp
+.PP
 .BR lseek (2)
 uses the type
 .IR off_t .
 This is a 32-bit signed type on 32-bit architectures, unless one
 compiles with
-.nf
-.sp
+.PP
 .in +4n
+.EX
 #define _FILE_OFFSET_BITS 64
+.EE
 .in
-.sp
-.fi
+.PP
 in which case it is a 64-bit signed type.
 .SS lseek64()
 Prototype:
-.nf
-.sp
+.PP
 .in +4n
+.EX
 .BI "off64_t lseek64(int " fd ", off64_t " offset ", int " whence );
+.EE
 .in
-.fi
-.sp
+.PP
 The library routine
 .BR lseek64 ()
 uses a 64-bit type even when
@@ -99,13 +99,13 @@ is a 32-bit type.
 Its prototype (and the type
 .IR off64_t )
 is available only when one compiles with
-.nf
-.sp
+.PP
 .in +4n
+.EX
 #define _LARGEFILE64_SOURCE
+.EE
 .in
-.sp
-.fi
+.PP
 The function
 .BR lseek64 ()
 .\" in glibc 2.0.94, not in 2.0.6
@@ -113,13 +113,13 @@ is available since glibc 2.1, and is defined to be an alias for
 .BR llseek ().
 .SS llseek()
 Prototype:
-.nf
-.sp
+.PP
 .in +4n
+.EX
 .BI "loff_t llseek(int " fd ", loff_t " offset ", int " whence );
+.EE
 .in
-.fi
-.sp
+.PP
 The type
 .I loff_t
 is a 64-bit signed type.
@@ -133,25 +133,25 @@ the above prototype, or something equivalent, to their own source.
 When users complained about data loss caused by a miscompilation of
 .BR e2fsck (8),
 glibc 2.1.3 added the link-time warning
-.sp
+.PP
 .in +4n
 "the \`llseek\' function may be dangerous; use \`lseek64\' instead."
 .in
-.sp
+.PP
 This makes this function unusable if one desires a warning-free
 compilation.
 .SS _llseek()
 On 32-bit architectures,
 this is the system call that is used to implement all of the above functions.
 The prototype is:
-.nf
-.sp
+.PP
 .in +4n
+.EX
 .BI "int _llseek(int " fd ", off_t " offset_hi ", off_t " offset_lo ,
 .BI "            loff_t *" result ", int " whence );
+.EE
 .in
-.fi
-.sp
+.PP
 For more details, see
 .BR llseek (2).
 .PP
index 98be198e093171d8977f8ed15b19468985c9442b..9c871b9eee224e22dbaa13f96d5c1e1bd6f73581 100644 (file)
@@ -91,8 +91,8 @@ Programmers should instead preempt calls to the relevant functions
 by defining and exporting functions such as "malloc" and "free".
 .SH EXAMPLE
 Here is a short example of how to use these variables.
-.sp
-.nf
+.PP
+.EX
 #include <stdio.h>
 #include <malloc.h>
 
@@ -136,7 +136,7 @@ my_malloc_hook(size_t size, const void *caller)
 
     return result;
 }
-.fi
+.EX
 .SH SEE ALSO
 .BR mallinfo (3),
 .BR malloc (3),
index 8d7ac21a845be2b62ae69d781468b3e70193e3d7..5b2f32c9ecf867fe461008465d7ea440fccff040 100644 (file)
@@ -143,9 +143,11 @@ object
 .I a
 can be initialized to the initial state
 by zeroing it, for example using
-.sp
+.PP
 .in +4n
+.EE
 memset(&a, 0, sizeof(a));
+.EE
 .in
 .SH RETURN VALUE
 The
index fa7db1fbbc2afc655352c1b023fb02835216ebba..f35687e5206432ed67da2ce4a59ae0d9eaf1e05a 100644 (file)
@@ -172,7 +172,7 @@ and
 .BR mkostemp ():
 The last six characters of \fItemplate\fP were not XXXXXX;
 now \fItemplate\fP is unchanged.
-.sp
+.IP
 For
 .BR mkstemps ()
 and
index 278265593bab602f8eab88d2dcb2943252dee41d..d94b5a55b9309c80cb9ea24603e0cfdcf284ed6b 100644 (file)
@@ -102,9 +102,9 @@ struct timespec {
     time_t tv_sec;        /* seconds */
     long   tv_nsec;       /* nanoseconds */
 };
-
 .fi
 .in
+.PP
 If no message is available,
 and the timeout has already expired by the time of the call,
 .BR mq_timedreceive ()
index c8693d5338a230f9f3218e70daea960a2104c1bb..5485a83238db6e9e1460094851ca1ddf91e9f50e 100644 (file)
@@ -104,16 +104,16 @@ points to a structure which specifies how long the call will block.
 This value is an absolute timeout in seconds and nanoseconds
 since the Epoch, 1970-01-01 00:00:00 +0000 (UTC),
 specified in the following structure:
-.sp
+.PP
 .in +4n
 .nf
 struct timespec {
     time_t tv_sec;        /* seconds */
     long   tv_nsec;       /* nanoseconds */
 };
-
 .fi
 .in
+.PP
 If the message queue is full,
 and the timeout has already expired by the time of the call,
 .BR mq_timedsend ()
index 3d123c9ca4008676a984064e358ddee0b992cf91..c6e0c61f1690c0cbdee2a39634e6f1ef579f4819 100644 (file)
@@ -576,16 +576,16 @@ In the first run, the
 command is executed in the child, and the
 .BR posix_spawn ()
 call employs no file actions or attributes objects.
-.sp
+.PP
 .in +4
-.nf
+.EX
 $ \fB./a.out date\fP
 PID of child: 7634
 Tue Feb  1 19:47:50 CEST 2011
 Child status: exited, status=0
-.fi
+.EE
 .in
-.sp
+.PP
 In the next run, the
 .I \-c
 command-line option is used to create a file actions object that closes
@@ -593,16 +593,16 @@ standard output in the child.
 Consequently,
 .BR date (1)
 fails when trying to perform output and exits with a status of 1.
-.sp
+.PP
 .in +4
-.nf
+.EX
 $ \fB./a.out -c date\fP
 PID of child: 7636
 date: write error: Bad file descriptor
 Child status: exited, status=1
-.fi
+.EE
 .in
-.sp
+.PP
 In the next run, the
 .I \-s
 command-line option is used to create an attributes object that
@@ -617,9 +617,9 @@ Therefore, to kill the child,
 is necessary
 .RB ( SIGKILL
 can't be blocked).
-.sp
+.PP
 .in +4
-.nf
+.EX
 $ \fB./a.out -s sleep 60 &\fP
 [1] 7637
 $ PID of child: 7638
@@ -628,19 +628,19 @@ $ \fBkill 7638\fP
 $ \fBkill -KILL 7638\fP
 $ Child status: killed by signal 9
 [1]+  Done                    ./a.out -s sleep 60
-.fi
+.EE
 .in
-.sp
+.PP
 When we try to execute a nonexistent command in the child, the
 .BR exec (3)
 fails and the child exits with a status of 127.
-.sp
+.PP
 .in +4
-.nf
+.EX
 $ \fB./a.out xxxxx
 PID of child: 10190
 Child status: exited, status=127
-.fi
+.EE
 .in
 .SS Program source
 .EX
index 15b74cf14d47e11ee5521e3f426d38844d8e1033..f331af1b75f7df07174f32e3cb32dbe9b9fd54ad 100644 (file)
@@ -29,14 +29,14 @@ The
 is defined as follows:
 .sp
 .in +4n
-.nf
+.EX
 struct group {
     char   *gr_name;      /* group name */
     char   *gr_passwd;    /* group password */
     gid_t   gr_gid;       /* group ID */
     char  **gr_mem;       /* group members */
 };
-.fi
+.EE
 .in
 .SH RETURN VALUE
 The function returns zero on success, and a nonzero value on error.
index ed9c5256a92568f97b52f6be9b3a3d851a0d85d0..b3fca6ee14dd8b15508b66f3667ee910f040a11e 100644 (file)
@@ -58,7 +58,7 @@ structure \fIp\fP in the file associated with \fIstream\fP.
 The \fIpasswd\fP structure is defined in \fI<pwd.h>\fP as follows:
 .sp
 .in +4n
-.nf
+.EX
 struct passwd {
     char    *pw_name;        /* username */
     char    *pw_passwd;      /* user password */
@@ -68,7 +68,7 @@ struct passwd {
     char    *pw_dir;         /* home directory */
     char    *pw_shell;       /* shell program */
 };
-.fi
+.EE
 .in
 .SH RETURN VALUE
 The
index e6efbfea2af45bedda319f87d06d00ce7b61b035..85756215ff08e8762fe7bc44cc563a290f1cf657 100644 (file)
@@ -124,8 +124,8 @@ For one example of use, see the example under
 .PP
 Another example is the following program,
 which sorts the strings given in its command-line arguments:
-.sp
-.nf
+.PP
+.EX
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -156,7 +156,7 @@ main(int argc, char *argv[])
         puts(argv[j]);
     exit(EXIT_SUCCESS);
 }
-.fi
+.EE
 .SH SEE ALSO
 .BR sort (1),
 .BR alphasort (3),
index ce9c56efa1631e32e6770c7a53b450d74285a7a4..d20c54c439f49f2995aa5ca6875b209a7c454edf 100644 (file)
@@ -40,19 +40,19 @@ The
 .BR raise ()
 function sends a signal to the calling process or thread.
 In a single-threaded program it is equivalent to
-.sp
+.PP
 .in +4n
-.nf
+.EX
 kill(getpid(), sig);
-.fi
+.EE
 .in
 .PP
 In a multithreaded program it is equivalent to
-.sp
+.PP
 .in +4n
-.nf
+.EX
 pthread_kill(pthread_self(), sig);
-.fi
+.EE
 .in
 .PP
 If the signal causes a handler to be called,
index e69d13afc1b6e4ce467267bc9779a55b205248ff..17117d10026a71ba30e8132cd03e792b41150605 100644 (file)
@@ -185,7 +185,7 @@ and
 possibly useful when one needs the same sequence on two different machines.
 .sp
 .in +4n
-.nf
+.EX
 static unsigned long next = 1;
 
 /* RAND_MAX assumed to be 32767 */
@@ -197,16 +197,16 @@ int myrand(void) {
 void mysrand(unsigned int seed) {
     next = seed;
 }
-.fi
+.EE
 .in
 .PP
 The following program can be used to display the
 pseudo-random sequence produced by
 .BR rand ()
 when given a particular seed.
+.PP
 .in +4n
-.nf
-
+.EX
 #include <stdlib.h>
 #include <stdio.h>
 
@@ -232,7 +232,7 @@ main(int argc, char *argv[])
 
     exit(EXIT_SUCCESS);
 }
-.fi
+.EX
 .in
 .SH SEE ALSO
 .BR drand48 (3),
index 78faf0500121729273dcae823f753d03d7be2c0b..4cd71a6b22cae881a15c4f34b1dd64822edf7478 100644 (file)
@@ -99,8 +99,8 @@ is not commented out.
 The program connects to a computer called "linux".
 Using "localhost" does not work.
 The result is the localtime of the computer "linux".
-.sp
-.nf
+.PP
+.EX
 #include <stdio.h>
 #include <stdlib.h>
 #include <errno.h>
@@ -136,7 +136,7 @@ main(void)
 
     exit(EXIT_SUCCESS);
 }
-.fi
+.EE
 .SH SEE ALSO
 .\" .BR netdate (1),
 .BR ntpdate (1),
index f3a2cf368bd950f1d68bea55508b7a87eb40416d..8e3091ce7771b77a0f47b2e4cba9c8fd242c9a2e 100644 (file)
@@ -137,8 +137,8 @@ alias_ent *alias_getbyname(char *name);
 The following example compiles with
 .IR "gcc example.c \-o example" .
 It will dump all names in the alias database.
-.sp
-.nf
+.PP
+.EX
 #include <aliases.h>
 #include <stdio.h>
 #include <stdlib.h>
@@ -162,7 +162,7 @@ main(void)
     endaliasent();
     exit(EXIT_SUCCESS);
 }
-.fi
+.EE
 .SH SEE ALSO
 .BR getgrent (3),
 .BR getpwent (3),
index 918445e4fa966e12ec3d92a94db230615f88c31f..eb90e5b4061382e74989210514ff3baaa286cf6e 100644 (file)
@@ -201,8 +201,8 @@ points to still exists by the time
 .I stream
 is closed, which also happens at program termination.
 For example, the following is invalid:
-.nf
-.sp
+.PP
+.EX
 #include <stdio.h>
 
 int
@@ -213,7 +213,7 @@ main(void)
     printf("Hello, world!\\n");
     return 0;
 }
-.fi
+.PP
 .SH SEE ALSO
 .BR stdbuf (1),
 .BR fclose (3),
index df89a1a72a1842995ef8e59269b03e4ca254043f..7624b4404b89ffd29683034ae9baa2438a87f3b9 100644 (file)
@@ -109,7 +109,7 @@ is listed in
 .BR open (2).
 (Symbolic definitions of these constants can be obtained by including
 .IR <sys/stat.h> .)
-.sp
+.IP
 A new shared memory object initially has zero length\(emthe size of the
 object can be set using
 .BR ftruncate (2).
index 4421fc175438f20dcfca743f96c07817d21417cc..daa0d364e7c78236f8b0ce59f99c137933cfb3aa 100644 (file)
@@ -40,9 +40,11 @@ These functions return the mantissa of
 .I x
 scaled to the range [1,2).
 They are equivalent to
-.sp
+.PP
 .in +4n
+.EX
 scalb(x, (double) \-ilogb(x))
+.EE
 .in
 .PP
 This function exists mainly for use in certain standardized tests
index 4d77a3723002ceb8b74ea9619cdf99705807372b..39b79667f8adbe166665e6b48add325226232baf 100644 (file)
@@ -59,12 +59,12 @@ argument is used to specify an accompanying item of data (either an integer
 or a pointer value) to be sent with the signal, and has the following type:
 .sp
 .in +4n
-.nf
+.EX
 union sigval {
     int   sival_int;
     void *sival_ptr;
 };
-.fi
+.EE
 .in
 .PP
 If the receiving process has installed a handler for this signal using the
index 8f36837f3a34cc6da603d1b4ec320afb30b4433b..10598056215c09eec73ee2469f81a7927cb393ab 100644 (file)
@@ -236,13 +236,15 @@ function will use information from that field rather than scanning
 .IR /proc/mounts .
 .PP
 The glibc implementations of
-.sp
-.nf
-   pathconf(path, _PC_REC_XFER_ALIGN);
-   pathconf(path, _PC_ALLOC_SIZE_MIN);
-   pathconf(path, _PC_REC_MIN_XFER_SIZE);
-.fi
-.sp
+.PP
+.in +4n
+.EX
+pathconf(path, _PC_REC_XFER_ALIGN);
+pathconf(path, _PC_ALLOC_SIZE_MIN);
+pathconf(path, _PC_REC_MIN_XFER_SIZE);
+.EE
+.in
+.PP
 respectively use the
 .IR f_frsize ,
 .IR f_frsize ,
index 15637925072dca1067eb1cfbaa326db28244c9fe..b51380d5ea685939ab032bc817a34b11f5c9b121 100644 (file)
@@ -84,7 +84,11 @@ and
 .BR strfroml ()
 functions are equivalent to
 .PP
-    snprintf(str, n, format, fp);
+.in +4n
+.EX
+snprintf(str, n, format, fp);
+.EE
+.in
 .PP
 except for the
 .I format
@@ -189,7 +193,7 @@ T}  Thread safety   MT-Safe locale
 \^     Asynchronous signal safety      AS-Unsafe heap
 \^     Asynchronous cancellation safety        AC-Unsafe mem
 .TE
-.sp
+.sp 1
 Note: these attributes are preliminary.
 .SH CONFORMING TO
 C99, ISO/IEC TS 18661-1.
@@ -207,39 +211,39 @@ To convert the value 12.1 as a float type to a string using decimal
 notation, resulting in "12.100000":
 .sp
 .in +4
-.nf
+.EX
 #define __STDC_WANT_IEC_60559_BFP_EXT__
 #include <stdlib.h>
 int ssize = 10;
 char s[ssize];
 strfromf(s, ssize, "%f", 12.1);
-.fi
+.EE
 .in
 .sp
 To convert the value 12.3456 as a float type to a string using
 decimal notation with two digits of precision, resulting in "12.35":
 .sp
 .in +4
-.nf
+.EX
 #define __STDC_WANT_IEC_60559_BFP_EXT__
 #include <stdlib.h>
 int ssize = 10;
 char s[ssize];
 strfromf(s, ssize, "%.2f", 12.3456);
-.fi
+.EE
 .in
 .sp
 To convert the value 12.345e19 as a double type to a string using
 scientific notation with zero digits of precision, resulting in "1E+20":
 .sp
 .in +4
-.nf
+.EX
 #define __STDC_WANT_IEC_60559_BFP_EXT__
 #include <stdlib.h>
 int ssize = 10;
 char s[ssize];
 strfromd(s, ssize, "%.E", 12.345e19);
-.fi
+.EE
 .in
 .SH SEE ALSO
 .BR atof (3),
index f6b362aa0a67e6f838e0bddde44d7c437abdcb01..552cbdf1f22d1c43a891403b21d7f408dff5c2eb 100644 (file)
@@ -59,7 +59,7 @@ is defined in
 as follows:
 .sp
 .in +4n
-.nf
+.EX
 struct tm {
     int tm_sec;    /* Seconds (0-60) */
     int tm_min;    /* Minutes (0-59) */
@@ -71,7 +71,7 @@ struct tm {
     int tm_yday;   /* Day in the year (0-365, 1 Jan = 0) */
     int tm_isdst;  /* Daylight saving time */
 };
-.fi
+.EE
 .in
 .PP
 For more details on the
@@ -418,7 +418,7 @@ The following example demonstrates the use of
 and
 .BR strftime (3).
 .sp
-.nf
+.EX
 #define _XOPEN_SOURCE
 #include <stdio.h>
 #include <stdlib.h>
@@ -437,7 +437,7 @@ main(void)
     puts(buf);
     exit(EXIT_SUCCESS);
 }
-.fi
+.EE
 .SH SEE ALSO
 .BR time (2),
 .BR getdate (3),
index eaf430c085855a3adc6a1c44f51a276f76c4108d..c661e4fa5c38a355e4dc30e820148afc47712950 100644 (file)
@@ -202,9 +202,9 @@ implementation-defined numeric strings.
 BSD also has
 .sp
 .in +4n
-.nf
+.EX
 .BI "quad_t strtoq(const char *" nptr ", char **" endptr ", int " base );
-.sp
+.EX
 .in
 .fi
 with completely analogous definition.
index 25b44a269e6b2277e6787b7cef9db06953d83232..9b78e49948580aa76c281a28d9ebf4d3acf1265f 100644 (file)
@@ -199,13 +199,13 @@ In locales other than the "C" locale, other strings may be accepted.
 supported.)
 .LP
 BSD also has
-.sp
+.PP
 .in +4n
-.nf
+.EX
 .BI "u_quad_t strtouq(const char *" nptr ", char **" endptr ", int " base );
-.sp
-.in -4n
-.fi
+.EE
+.in
+.PP
 with completely analogous definition.
 Depending on the wordsize of the current architecture, this
 may be equivalent to
index fe00a0951acc66a8c60d23ba64b8f45fbc5019ac..18881a06d0f7fc44b6a0b051e046d2829bb0c30d 100644 (file)
@@ -94,13 +94,13 @@ that is a pointer to a \fItermios\fP structure.
 This structure contains at least the following members:
 .sp
 .in +4n
-.nf
+.EX
 tcflag_t c_iflag;      /* input modes */
 tcflag_t c_oflag;      /* output modes */
 tcflag_t c_cflag;      /* control modes */
 tcflag_t c_lflag;      /* local modes */
 cc_t     c_cc[NCCS];   /* special characters */
-.fi
+.EE
 .in
 .PP
 The values that may be assigned to these fields are described below.
@@ -292,7 +292,7 @@ or
 .B _BSD_SOURCE
 or
 .BR _SVID_SOURCE ]
-.sp
+.IP
 (POSIX says that the baud speed is stored in the
 .I termios
 structure without specifying where precisely, and provides
index 657ec2cb0dc078f2f947c783830c484911c26389..568087bd49acb545096e044dd5fe5956cbc3ad29 100644 (file)
@@ -43,26 +43,33 @@ These functions calculate the Gamma function of
 .IR x .
 .PP
 The Gamma function is defined by
-.sp
-    Gamma(x) = integral from 0 to infinity of t^(x\-1) e^\-t dt
-.sp
+.PP
+.RS
+Gamma(x) = integral from 0 to infinity of t^(x\-1) e^\-t dt
+.RE
+.PP
 It is defined for every real number except for nonpositive integers.
 For nonnegative integral
 .I m
 one has
-.sp
-    Gamma(m+1) = m!
-.sp
+.PP
+.RS
+Gamma(m+1) = m!
+.RE
+.PP
 and, more generally, for all
 .IR x :
-.sp
-    Gamma(x+1) = x * Gamma(x)
-.sp
+.PP
+.RS
+Gamma(x+1) = x * Gamma(x)
+.RE
+.PP
 Furthermore, the following is valid for all values of
 .I x
 outside the poles:
-.sp
-    Gamma(x) * Gamma(1 \- x) = PI / sin(PI * x)
+.PP
+.RS
+Gamma(x) * Gamma(1 \- x) = PI / sin(PI * x)
 .PP
 .SH RETURN VALUE
 On success, these functions return Gamma(x).
index ac780e1f5da2b1ce6be390965cc4e9cd1c95cd2b..cf6d061f775a46d2afd6f35163fc98e9756ea266 100644 (file)
@@ -62,12 +62,12 @@ structures, defined in
 as:
 .sp
 .in +4n
-.nf
+.EX
 struct timeval {
     time_t      tv_sec;     /* seconds */
     suseconds_t tv_usec;    /* microseconds */
 };
-.fi
+.EE
 .in
 .PP
 .BR timeradd ()
index 4d277867a0120b7ec4ed253ed18da15542812f7c..a5aa962afd96d4dee2a074730603dce7615cdc54 100644 (file)
@@ -233,8 +233,8 @@ implementation, but is not in the System V documentation.
 The following program inserts twelve random numbers into a binary
 tree, where duplicate numbers are collapsed, then prints the numbers
 in order.
-.sp
-.nf
+.PP
+.EX
 #define _GNU_SOURCE     /* Expose declaration of tdestroy() */
 #include <search.h>
 #include <stdlib.h>
@@ -305,7 +305,7 @@ main(void)
     tdestroy(root, free);
     exit(EXIT_SUCCESS);
 }
-.fi
+.EE
 .SH SEE ALSO
 .BR bsearch (3),
 .BR hsearch (3),
index 2ceef942347da8e0cc8973abc9c62324c3192821..70e455aceb8509873b0cab0b12e16d35986b7e4a 100644 (file)
@@ -93,11 +93,13 @@ The value of
 can be one of two formats.
 The first format is a string of characters that directly represent the
 timezone to be used:
-.sp
-.RS
+.PP
+.in +4n
+.EX
 .IR "std offset" [ dst [ offset ][, start [ /time ], end [ /time ]]]
-.RE
-.sp
+.EE
+.in
+.PP
 There are no spaces in the specification.
 The \fIstd\fP string specifies an abbreviation for the timezone and must be
 three or more alphabetic characters.
@@ -111,10 +113,12 @@ The \fIoffset\fP is positive
 if the local timezone is west of the Prime Meridian and negative if it is
 east.
 The hour must be between 0 and 24, and the minutes and seconds 00 and 59:
-.sp
-.RS
+.PP
+.in +4n
+.EX
 .RI [ + | - ] hh [ :mm [ :ss ]]
-.RE
+.EE
+.in
 .PP
 The \fIdst\fP string and \fIoffset\fP specify the name and offset for the
 corresponding daylight saving timezone.
@@ -153,18 +157,21 @@ where the standard time (NZST) is 12 hours ahead of UTC,
 and daylight saving time (NZDT), 13 hours ahead of UTC,
 runs from the first Sunday in October to the third Sunday in March,
 and the changeovers happen at the default time of 02:00:00:
-.nf
-
-    TZ="NZST-12:00:00NZDT-13:00:00,M10.1.0,M3.3.0"
-.fi
+.in +4n
+.EX
+TZ="NZST-12:00:00NZDT-13:00:00,M10.1.0,M3.3.0"
+.EE
+.in
 .PP
 The second format specifies that the timezone information should be read
 from a file:
-.sp
-.RS
+.PP
+.in +4n
+.EX
 :[filespec]
-.RE
-.sp
+.EE
+.in
+.PP
 If the file specification \fIfilespec\fP is omitted, or its value cannot
 be interpreted, then Coordinated Universal Time (UTC) is used.
 If \fIfilespec\fP is given, it specifies another
@@ -176,10 +183,12 @@ If the colon is omitted each
 of the above \fBTZ\fP formats will be tried.
 .PP
 Here's an example, once more for New Zealand:
-.nf
-
-    TZ=":Pacific/Auckland"
-.fi
+.PP
+.in +4n
+.EX
+TZ=":Pacific/Auckland"
+.EE
+.in
 .SH ENVIRONMENT
 .TP
 .B TZ
index 48ba242e091baae136532fa67e8d1359974bc646..fd997f4c86938a11357669729fcde532df205172 100644 (file)
@@ -81,12 +81,13 @@ Present on Solaris, NetBSD, and perhaps other systems.
 For consistency with the other "utmpx" functions (see
 .BR getutxent (3)),
 glibc provides (since version 2.1):
-.nf
-.sp
+.PP
+.in +4n
+.EX
 .B #include <utmpx.h>
-.sp
 .BI "void updwtmpx (const char *" wtmpx_file ", const struct utmpx *" utx );
-.fi
+.EE
+.in
 .PP
 This function performs the same task as
 .BR updwtmp (),
index d2a95e35f5bbf89933fcbdc877fd91d125ded8c1..9e317ab79c0ca1d73d0d243faf59af291510b14b 100644 (file)
@@ -125,15 +125,15 @@ in the range [0,1000000].
 Programs will be more portable
 if they never mention this type explicitly.
 Use
+.PP
 .in +4n
-.nf
-.sp
+.EX
 #include <unistd.h>
 \&...
     unsigned int usecs;
 \&...
     usleep(usecs);
-.fi
+.EE
 .in
 .LP
 The interaction of this function with the
@@ -151,7 +151,7 @@ signal, and with other timer functions such as
 .BR ualarm (3)
 is unspecified.
 .SH SEE ALSO
-.BR alarm (2),
+BR alarm (2),
 .BR getitimer (2),
 .BR nanosleep (2),
 .BR select (2),
index fa82246abad21c9b7498b9cc77f65999178bf3ce..73aa0db82966853e99e8fdef39a8e776c7ce92ed 100644 (file)
@@ -97,8 +97,8 @@ wide-character string is destructively modified during
 the operation.
 .SH EXAMPLE
 The following code loops over the tokens contained in a wide-character string.
-.sp
-.nf
+.PP
+.EX
 wchar_t *wcs = ...;
 wchar_t *token;
 wchar_t *state;
@@ -107,7 +107,7 @@ for (token = wcstok(wcs, " \\t\\n", &state);
     token = wcstok(NULL, " \\t\\n", &state)) {
     ...
 }
-.fi
+.EE
 .SH SEE ALSO
 .BR strtok (3),
 .BR wcschr (3)
index 58f31397876504f7c9e3c3f63fe7fd527f7cad09..aa88ff5a547bd785d18c5afc0b0fe95558193255 100644 (file)
@@ -72,7 +72,7 @@ that invoke special functions (i.e., anything other than writing a
 glyph at the current cursor location) on the Linux console.
 .PP
 .B "Control characters"
-.sp
+.PP
 A character is a control character if (before transformation
 according to the mapping table) it has one of the 14 codes
 00 (NUL), 07 (BEL), 08 (BS), 09 (HT), 0a (LF), 0b (VT),
@@ -164,7 +164,7 @@ T}
 .TE
 .PP
 .B "ECMA-48 CSI sequences"
-.sp
+.PP
 CSI (or ESC [) is followed by a sequence of parameters,
 at most NPAR (16), that are decimal numbers separated by
 semicolons.
@@ -223,7 +223,7 @@ u   ?       Restore cursor location.
 .TE
 .PP
 .B ECMA-48 Set Graphics Rendition
-.sp
+.PP
 The ECMA-48 SGR sequence ESC [ \fIparameters\fP m sets display
 attributes.
 Several attributes can be set in the same sequence, separated by
@@ -308,7 +308,7 @@ where \fIx,y\fP is the cursor location.
 .\"
 .PP
 .B DEC Private Mode (DECSET/DECRST) sequences
-.sp
+.PP
 .\"
 These are not described in ECMA-48.
 We list the Set Mode sequences;
@@ -355,7 +355,7 @@ to 0)\(emsee below.
 .\"
 .PP
 .B Linux Console Private CSI Sequences
-.sp
+.PP
 .\"
 The following sequences are neither ECMA-48 nor native VT102.
 They are native to the Linux console driver.
@@ -472,7 +472,7 @@ Linux console and the two most important others, the DEC VT102 and
 .\"
 .PP
 .B Control-character handling
-.sp
+.PP
 The VT102 also recognized the following control characters:
 .HP
 NUL (0x00) was ignored;
@@ -493,7 +493,7 @@ BEL, BS, HT, LF, VT, FF, CR, SO, SI, ESC.
 .\"
 .PP
 .B Escape sequences
-.sp
+.PP
 VT100 console sequences not implemented on the Linux console:
 .TS
 l l l.
@@ -568,7 +568,7 @@ implementation than Linux console.
 .\"
 .PP
 .B CSI Sequences
-.sp
+.PP
 Old versions of \fBxterm\fP(1), for example, from X11R5,
 interpret the blink SGR as a bold SGR.
 Later versions which implemented ANSI colors, for example,
index 03e4e5c5b62e98c3781956a390e66c1a101890aa..d7a82088b8e26cef3953b0fa2b026b35381df042 100644 (file)
--- a/man4/hd.4
+++ b/man4/hd.4
@@ -76,30 +76,22 @@ refers to all of the first IDE drive in the system; and
 refers to the third DOS "primary" partition on the second one.
 .LP
 They are typically created by:
-.RS
-.sp
+.PP
+.in +4n
+.EX
 mknod \-m 660 /dev/hda b 3 0
-.br
 mknod \-m 660 /dev/hda1 b 3 1
-.br
 mknod \-m 660 /dev/hda2 b 3 2
-.br
 \&...
-.br
 mknod \-m 660 /dev/hda8 b 3 8
-.br
 mknod \-m 660 /dev/hdb b 3 64
-.br
 mknod \-m 660 /dev/hdb1 b 3 65
-.br
 mknod \-m 660 /dev/hdb2 b 3 66
-.br
 \&...
-.br
 mknod \-m 660 /dev/hdb8 b 3 72
-.br
 chown root:disk /dev/hd*
-.RE
+.EE
+.in
 .SH FILES
 /dev/hd*
 .SH SEE ALSO
index 2d2191e25487017b31dc8aa18c0d85b2892daa1d..63000bf7a45db8c29910b1ea7661c4379d27027d 100644 (file)
@@ -40,8 +40,8 @@ should still be used for these.
 The
 .B hpsa
 driver supports the following Smart Array boards:
+.PP
 .nf
-
     Smart Array P700M
     Smart Array P212
     Smart Array P410
@@ -96,48 +96,58 @@ This attribute contains the firmware version of the Smart Array.
 .IP
 For example:
 .IP
-.nf
-    # \fBcd /sys/class/scsi_host/host4\fP
-    # \fBcat firmware_revision\fP
-    7.14
-.fi
+.in +4n
+.EX
+# \fBcd /sys/class/scsi_host/host4\fP
+# \fBcat firmware_revision\fP
+7.14
+.EE
+.in
+.\"
 .SS HPSA-specific disk attribute files in /sys
 .TP
 .I /sys/class/scsi_disk/c:b:t:l/device/unique_id
 This attribute contains a 32 hex-digit unique ID for each logical drive.
-.nf
-
+.IP
 For example:
-
-    # \fBcd /sys/class/scsi_disk/4:0:0:0/device\fP
-    # \fBcat unique_id\fP
-    600508B1001044395355323037570F77
-.fi
+.IP
+.in +4n
+.EX
+# \fBcd /sys/class/scsi_disk/4:0:0:0/device\fP
+# \fBcat unique_id\fP
+600508B1001044395355323037570F77
+.EE
+.in
 .TP
 .I /sys/class/scsi_disk/c:b:t:l/device/raid_level
 This attribute contains the RAID level of each logical drive.
-.nf
-
+.IP
 For example:
-
-    # \fBcd /sys/class/scsi_disk/4:0:0:0/device\fP
-    # \fBcat raid_level\fP
-    RAID 0
-.fi
+.IP
+.in +4n
+.EX
+# \fBcd /sys/class/scsi_disk/4:0:0:0/device\fP
+# \fBcat raid_level\fP
+RAID 0
+.EE
+.in
 .TP
 .I /sys/class/scsi_disk/c:b:t:l/device/lunid
 This attribute contains the 16 hex-digit (8 byte) LUN ID
 by which a logical drive or physical device can be addressed.
 .IR c : b : t : l
 are the controller, bus, target, and lun of the device.
-.nf
-
+.PP
 For example:
-
-    # \fBcd /sys/class/scsi_disk/4:0:0:0/device\fP
-    # \fBcat lunid\fP
-    0x0000004000000000
-.fi
+.IP
+.in +4n
+.EX
+# \fBcd /sys/class/scsi_disk/4:0:0:0/device\fP
+# \fBcat lunid\fP
+0x0000004000000000
+.EE
+.in
+.\"
 .SS Supported ioctl() operations
 For compatibility with applications written for the
 .BR cciss (4)
@@ -162,9 +172,13 @@ Returns PCI domain, bus, device and function and "board ID" (PCI subsystem ID).
 .TP
 .B CCISS_GETDRIVVER
 Returns driver version in three bytes encoded as:
-.sp
-    (major_version << 16) | (minor_version << 8) |
-        (subminor_version)
+.IP
+.in +4n
+.EX
+(major_version << 16) | (minor_version << 8) |
+    (subminor_version)
+.EE
+.in
 .TP
 .BR CCISS_PASSTHRU ", " CCISS_BIG_PASSTHRU
 Allows "BMIC" and "CISS" commands to be passed through to the Smart Array.
index 073ebefb437ef90c18f8003419bed73486c0a14e..86483ad1054cf32dd0245cb252235295a6d00fad 100644 (file)
@@ -48,13 +48,14 @@ For example: on x86, RAM access is not allowed but accessing
 memory-mapped PCI regions is.
 .LP
 It is typically created by:
-.RS
-.sp
+.PP
+.in +4n
+.EX
 mknod \-m 660 /dev/mem c 1 1
-.br
 chown root:kmem /dev/mem
-.RE
-.LP
+.EE
+.in
+.PP
 The file
 .IR /dev/kmem
 is the same as
@@ -66,25 +67,27 @@ Since Linux 2.6.26, this file is available only if the
 kernel configuration option is enabled.
 .LP
 It is typically created by:
-.RS
-.sp
+.PP
+.in +4n
+.EX
 mknod \-m 640 /dev/kmem c 1 2
-.br
 chown root:kmem /dev/kmem
-.RE
-.LP
+.EE
+.in
+.PP
 .IR /dev/port
 is similar to
 .IR /dev/mem ,
 but the I/O ports are accessed.
 .LP
 It is typically created by:
-.RS
-.sp
+.PP
+.in +4n
+.EX
 mknod \-m 660 /dev/port c 1 4
-.br
 chown root:kmem /dev/port
-.RE
+.EE
+.in
 .SH FILES
 .I /dev/mem
 .br
index 806a048cd81652d7914c732f7428bec1f5372794..e1089a58a7fe9ec24261561398f46f87adeb7ec5 100644 (file)
@@ -42,14 +42,14 @@ returns 0), whereas reads from
 always return bytes containing zero (\(aq\e0\(aq characters).
 .LP
 These devices are typically created by:
-.RS
-.sp
+.PP
+.in +4n
+.EX
 mknod \-m 666 /dev/null c 1 3
-.br
 mknod \-m 666 /dev/zero c 1 5
-.br
 chown root:root /dev/null /dev/zero
-.RE
+.EE
+.in
 .SH FILES
 .I /dev/null
 .br
index 61117f0225996f04cef5f0de950327fac1622e7f..100d0bb725fef4e2e071c9b9b530978608262a84 100644 (file)
@@ -32,12 +32,13 @@ The
 device is a block device to access the ram disk in raw mode.
 .LP
 It is typically created by:
-.RS
-.sp
+.PP
+.in +4n
+.EX
 mknod \-m 660 /dev/ram b 1 1
-.br
 chown root:disk /dev/ram
-.RE
+.EE
+.in
 .SH FILES
 /dev/ram
 .SH SEE ALSO
index ca0d1f605835cb347492e92abee4bfdc12bdd21d..f7e88db75d3c49bdcc7e7148c159a9760a150ef2 100644 (file)
--- a/man4/sd.4
+++ b/man4/sd.4
@@ -51,11 +51,11 @@ where
 is the number of the physical drive in order of detection, and
 .I partition_number
 is as follows:
-.sp
+.IP +3
 partition 0 is the whole drive
-.br
+.IP
 partitions 1-4 are the DOS "primary" partitions
-.br
+.IP
 partitions 5-8 are the DOS "extended" (or "logical") partitions
 .PP
 For example,
@@ -75,16 +75,16 @@ are provided:
 .TP
 .B HDIO_GETGEO
 Returns the BIOS disk parameters in the following structure:
+.PP
 .in +4n
-.nf
-
+.EX
 struct hd_geometry {
     unsigned char  heads;
     unsigned char  sectors;
     unsigned short cylinders;
     unsigned long  start;
 };
-.fi
+.EE
 .in
 .IP
 A pointer to this structure is passed as the
index 939bada6c39edb8b111a5a2854d87ff0c87bcc11..5fdd40692387e5e5343ef4b869a7f874185348f8 100644 (file)
@@ -31,18 +31,16 @@ ttyS \- serial terminal lines
 are character devices for the serial terminal lines.
 .LP
 They are typically created by:
-.RS
-.sp
+.PP
+.in +4n
+.EX
 mknod \-m 660 /dev/ttyS0 c 4 64 # base address 0x3f8
-.br
 mknod \-m 660 /dev/ttyS1 c 4 65 # base address 0x2f8
-.br
 mknod \-m 660 /dev/ttyS2 c 4 66 # base address 0x3e8
-.br
 mknod \-m 660 /dev/ttyS3 c 4 67 # base address 0x2e8
-.br
 chown root:tty /dev/ttyS[0\-3]
-.RE
+.EE
+.in
 .SH FILES
 /dev/ttyS[0\-3]
 .SH SEE ALSO
index 4f0580bcb4a64d7bb9f1c00a56a56d0cbb82f9db..ceb5636125663dfe00aaae8b87cf260fb51c77e7 100644 (file)
@@ -137,7 +137,7 @@ optional period and 3 character extension.
 .B ncpfs
 is a network filesystem that supports the NCP protocol, used by
 Novell NetWare.
-.sp
+.IP
 To use
 .BR ncpfs ,
 you need special programs, which can be found at
@@ -167,7 +167,7 @@ that was integrated into Linux in kernel 2.4.1.
 .B smb
 is a network filesystem that supports the SMB protocol, used by
 Windows for Workgroups, Windows NT, and Lan Manager.
-.sp
+.IP
 To use
 .B smb
 fs, you need a special mount program, which can be found in the ksmbfs
index 84c8ea3d0dbc943e254a292e72c7e29b89cc596f..704ba48fd6ea22a0fdbb8347433513b91b30ba3a 100644 (file)
@@ -31,11 +31,13 @@ The
 .I /etc/group
 file is a text file that defines the groups on the system.
 There is one entry per line, with the following format:
-.sp
-.RS
+.PP
+.in +4n
+.EX
 group_name:password:GID:user_list
-.RE
-.sp
+.EE
+.in
+.PP
 The fields are as follows:
 .TP 12
 .I group_name
index 230eebf7f0d042af9847569e7c8be9fccd083f4f..449fcc934152ce6e001a03d034f057a4ac811abe 100644 (file)
@@ -78,11 +78,13 @@ to set it.
 .PP
 Each line of the file describes a single user,
 and contains seven colon-separated fields:
-.sp
-.RS
+.PP
+.in +4n
+.EX
 name:password:UID:GID:GECOS:directory:shell
-.RE
-.sp
+.EE
+.in
+.PP
 The field are as follows:
 .TP 12
 .I name
index bec0a784b31e4642053f79c8982703f33ca020f7..2bb5b1a896d85dd4e3756834cfe8b244f9a670db 100644 (file)
@@ -45,14 +45,14 @@ disallow access to users with shells not included in this file.
 .SH EXAMPLE
 .I /etc/shells
 may contain the following paths:
-.sp
-.RS
+.PP
+.in +4n
+.EX
 .I /bin/sh
-.br
 .I /bin/bash
-.br
 .I /bin/csh
-.RE
+.EE
+.in
 .SH SEE ALSO
 .BR chsh (1),
 .BR getusershell (3)
index aa6fd487c8d5772fbd85c7cce9f6959b5d2e42a9..0799d6913037fd919684c885d5f6dd869df8fea1 100644 (file)
@@ -84,9 +84,9 @@ boolean, then numeric, and then string capabilities, each sorted
 alphabetically without looking at lower or upper spelling.
 Capabilities of similar functions can be written in one line.
 .LP
-.nf
 Example for:
-.sp
+.nf
+.PP
 Head line: vt|vt101|DEC VT 101 terminal in 80 character mode:\e
 Head line: Vt|vt101-w|DEC VT 101 terminal in (wide) 132 character mode:\e
 Boolean: :bs:\e
@@ -436,7 +436,7 @@ The first character is the name of the block graphic
 symbol and the second characters is its definition.
 .LP
 The following names are available:
-.sp
+.PP
 .nf
 +      right arrow (>)
 ,      left arrow (<)
@@ -464,7 +464,7 @@ w   normal tee (+)
 x      vertical line (|)
 ~      paragraph (???)
 .fi
-.sp
+.PP
 The values in parentheses are suggested defaults which are used by the
 .IR curses
 library, if the capabilities are missing.
index f0212d8e0adfdcb3a2ea158d6db3a376dc4533de..63ed3fb28dd98bdfdb9be3ceafeb46cba8ce995a 100644 (file)
@@ -58,12 +58,13 @@ the tty definitions file.
 A typical
 .I /etc/ttytype
 is:
-.RS
-.sp
+.PP
+.in +4n
+.EX
 con80x25 tty1
-.br
 vt320 ttys0
-.RE
+.EE
+.in
 .SH SEE ALSO
 .BR termcap (5),
 .BR terminfo (5),
index 452265cdb0ed5310153d2fc20b2ec494cd4f7a91..46e083930b760932611391733d6d5bc491918973 100644 (file)
@@ -83,18 +83,17 @@ These values serve as indices into the next field.
 .I tzh_typecnt
 .I ttinfo
 entries, each defined as follows:
-.in +.5i
-.sp
-.nf
-.ta .5i +\w'unsigned char\0\0'u
+.PP
+.in +4n
+.EX
 struct ttinfo {
-       int32_t tt_gmtoff;
-       unsigned char   tt_isdst;
-       unsigned char   tt_abbrind;
+    int32_t       tt_gmtoff;
+    unsigned char tt_isdst;
+    unsigned char tt_abbrind;
 };
-.in -.5i
-.fi
-.sp
+.EE
+.in
+.PP
 Each structure is written as a four-byte signed integer value for
 .IR tt_gmtoff ,
 in a standard byte order, followed by a one-byte value for
index 98a9a299b82b0ed798da2b2772c833c117f2a283..6990a40f66cf5d5a940543c43b27368f961e486e 100644 (file)
@@ -57,9 +57,9 @@ declared as follows in
 .IR <utmp.h>
 (note that this is only one of several definitions
 around; details depend on the version of libc):
+.in
 .in +4n
-.nf
-.sp
+.EX
 /* Values for ut_type field, below */
 
 #define EMPTY         0 /* Record does not contain valid info
@@ -127,9 +127,9 @@ struct utmp {
 #endif
 #define ut_xtime ut_tv.tv_sec
 #define ut_addr ut_addr_v6[0]
-.sp
-.fi
+.EE
 .in
+.PP
 This structure gives the name of the special file associated with the
 user's terminal, the user's login name, and the time of login in the form
 of
@@ -309,24 +309,24 @@ and
 .IR tv_usec .
 Since \fIut_tv\fP may not be the same as \fIstruct timeval\fP,
 then instead of the call:
+.PP
 .in +4n
-.nf
-.sp
+.EX
 gettimeofday((struct timeval *) &ut.ut_tv, NULL);
-.fi
+.EE
 .in
 .PP
 the following method of setting this field is recommended:
+.PP
 .in +4n
-.nf
-.sp
+.EX
 struct utmp ut;
 struct timeval tv;
 
 gettimeofday(&tv, NULL);
 ut.ut_tv.tv_sec = tv.tv_sec;
 ut.ut_tv.tv_usec = tv.tv_usec;
-.fi
+.EE
 .in
 .\" .PP
 .\" Note that the \fIutmp\fP struct from libc5 has changed in libc6.
index f706014498aedaaccc2365f95ed474135f638239..1a13b926117195240db0163bb2cb02b494b68bc4 100644 (file)
@@ -123,7 +123,7 @@ _
 \}
 .SS Tables
 For convenience, below are more compact tables in hex and decimal.
-.sp
+.PP
 .nf
 .if t \{\
 .in 1i
index 5f318a9c559aa1f140b4617d4574dd75976e4aae..319b3d2504f4e15044478a8e1479fa1110db01e1 100644 (file)
@@ -35,7 +35,7 @@ In general, this is used to
 supply the kernel with information about hardware parameters that
 the kernel would not be able to determine on its own, or to avoid/override
 the values that the kernel would otherwise detect.
-
+.PP
 When the kernel is booted directly by the BIOS,
 you have no opportunity to specify any parameters.
 So, in order to take advantage of this possibility you have to
@@ -44,11 +44,11 @@ use a boot loader that is able to pass parameters, such as GRUB.
 The kernel command line is parsed into a list of strings
 (boot arguments) separated by spaces.
 Most of the boot arguments have the form:
-
+.PP
 .in +4n
-.nf
+.EX
 name[=value_1][,value_2]...[,value_10]
-.fi
+.EE
 .in
 .LP
 where 'name' is a unique keyword that is used to identify what part of
@@ -58,14 +58,14 @@ separated parameters per keyword.
 (However, you can reuse the same
 keyword with up to an additional 10 parameters in unusually
 complicated situations, assuming the setup function supports it.)
-
+.PP
 Most of the sorting is coded in the kernel source file
 .IR init/main.c .
 First, the kernel
 checks to see if the argument is any of the special arguments 'root=',
 \&'nfsroot=', 'nfsaddrs=', 'ro', 'rw', 'debug' or 'init'.
 The meaning of these special arguments is described below.
-
+.PP
 Then it walks a list of setup functions
 to see if the specified argument string (such as 'foo') has
 been associated with a setup function ('foo_setup()') for a particular
@@ -76,13 +76,13 @@ if 'foo' was registered.
 If it was, then it would call the setup
 function associated with 'foo' (foo_setup()) and hand it the arguments
 3, 4, 5, and 6 as given on the kernel command line.
-
+.PP
 Anything of the form 'foo=bar' that is not accepted as a setup function
 as described above is then interpreted as an environment variable to
 be set.
 A (useless?) example would be to use 'TERM=vt100' as a boot
 argument.
-
+.PP
 Any remaining arguments that were not picked up by the kernel and were
 not interpreted as environment variables are then passed onto PID 1,
 which is usually the
@@ -132,7 +132,7 @@ system that the kernel was built on.
 To override this value, and
 select the second floppy drive as the root device, one would
 use 'root=/dev/fd1'.
-
+.IP
 The root device can be specified symbolically or numerically.
 A symbolic specification has the form
 .IR /dev/XXYN ,
@@ -141,11 +141,11 @@ the device type (e.g., 'hd' for ST-506 compatible hard disk, with Y in
 \&'a'-'d'; 'sd' for SCSI compatible disk, with Y in 'a'-'e'),
 Y the driver letter or
 number, and N the number (in decimal) of the partition on this device.
-
+.IP
 Note that this has nothing to do with the designation of these
 devices on your filesystem.
 The '/dev/' part is purely conventional.
-
+.IP
 The more awkward and less portable numeric specification of the above
 possible root devices in major/minor format is also accepted.
 (For example,
@@ -179,7 +179,7 @@ write to files on the filesystem in question until it is 'remounted'
 as read/write capable, for example, by 'mount \-w \-n \-o remount /'.
 (See also
 .BR mount (8).)
-
+.IP
 The 'rw' option tells the kernel to mount the root filesystem read/write.
 This is the default.
 .TP
@@ -187,41 +187,41 @@ This is the default.
 This tells the kernel the location of the suspend-to-disk data that you want the machine to resume from after hibernation.
 Usually, it is the same as your swap partition or file.
 Example:
-
+.IP
 .in +4n
-.nf
+.EX
 resume=/dev/hda2
-.fi
+.EE
 .in
 .TP
 .B "'reserve=...'"
 This is used to protect I/O port regions from probes.
 The form of the command is:
-
+.IP
 .in +4n
-.nf
+.EX
 .BI reserve= iobase,extent[,iobase,extent]...
-.fi
+.EE
 .in
-.sp
+.IP
 In some machines it may be necessary to prevent device drivers from
 checking for devices (auto-probing) in a specific region.
 This may be
 because of hardware that reacts badly to the probing, or hardware
 that would be mistakenly identified, or merely
 hardware you don't want the kernel to initialize.
-
+.IP
 The reserve boot-time argument specifies an I/O port region that
 shouldn't be probed.
 A device driver will not probe a reserved region,
 unless another boot argument explicitly specifies that it do so.
-
+.IP
 For example, the boot line
-
+.IP
 .in +4n
-.nf
+.EX
 reserve=0x300,32  blah=0x300
-.fi
+.EE
 .in
 .IP
 keeps all device drivers except the driver for 'blah' from probing
@@ -231,11 +231,11 @@ keeps all device drivers except the driver for 'blah' from probing
 By default, the kernel will not reboot after a panic, but this option
 will cause a kernel reboot after N seconds (if N is greater than zero).
 This panic timeout can also be set by
-
+.IP
 .in +4n
-.nf
+.EX
 echo N > /proc/sys/kernel/panic
-.fi
+.EE
 .in
 .TP
 .B "'reboot=[warm|cold][,[bios|hard]]'"
@@ -300,13 +300,13 @@ when that is given, or 2, the default.
 The significance of this variable is that it
 gives the granularity of the profiling: each clock tick, if the
 system was executing kernel code, a counter is incremented:
-
+.IP
 .in +4n
-.nf
+.EX
 profile[address >> prof_shift]++;
-.fi
+.EE
 .in
-.sp
+.IP
 The raw profiling information can be read from
 .IR /proc/profile .
 Probably you'll want to use a tool such as readprofile.c to digest it.
@@ -324,7 +324,7 @@ ramdisk.
 One might also have a system in which first
 some modules (for filesystem or hardware) must be loaded
 before the main disk can be accessed.
-
+.IP
 In Linux 1.3.48, ramdisk handling was changed drastically.
 Earlier, the memory was allocated statically, and there was
 a 'ramdisk=N' parameter to tell its size.
@@ -335,7 +335,7 @@ setup, see the kernel source file
 .IR Documentation/blockdev/ramdisk.txt
 .RI ( Documentation/ramdisk.txt
 in older kernels).
-
+.IP
 There are four parameters, two boolean and two integral.
 .TP
 .B "'load_ramdisk=N'"
@@ -376,10 +376,10 @@ finally
 the usual boot sequence (e.g., invocation of
 .IR /sbin/init )
 is performed.
-
+.IP
 For a detailed description of the initrd feature, see the kernel source file
 .IR Documentation/initrd.txt .
-
+.IP
 The 'noinitrd' option tells the kernel that although it was compiled for
 operation with initrd, it should not go through the above steps, but
 leave the initrd data under
@@ -389,12 +389,12 @@ the last process that used it has closed
 .IR /dev/initrd .)
 .SS Boot arguments for SCSI devices
 General notation for this section:
-
+.PP
 .I iobase
 -- the first I/O port that the SCSI host occupies.
 These are specified in hexadecimal notation,
 and usually lie in the range from 0x200 to 0x3ff.
-
+.PP
 .I irq
 -- the hardware interrupt that the card is configured to use.
 Valid values will be dependent on the card in question, but will
@@ -402,7 +402,7 @@ usually be 5, 7, 9, 10, 11, 12, and 15.
 The other values are usually
 used for common peripherals like IDE hard disks, floppies, serial
 ports, and so on.
-
+.PP
 .I scsi-id
 -- the ID that the host adapter uses to identify itself on the
 SCSI bus.
@@ -410,7 +410,7 @@ Only some host adapters allow you to change this value, as
 most have it permanently specified internally.
 The usual default value
 is 7, but the Seagate and Future Domain TMC-950 boards use 6.
-
+.PP
 .I parity
 -- whether the SCSI host adapter expects the attached devices
 to supply a parity value with all information exchanges.
@@ -429,13 +429,13 @@ Each CD is addressed as a
 But most
 devices, such as hard disks, tape drives and such are only one device,
 and will be assigned to LUN zero.
-
+.IP
 Some poorly designed SCSI devices cannot handle being probed for
 LUNs not equal to zero.
 Therefore, if the compile-time flag
 .B CONFIG_SCSI_MULTI_LUN
 is not set, newer kernels will by default probe only LUN zero.
-
+.IP
 To specify the number of probed LUNs at boot, one enters
 \&'max_scsi_luns=n' as a boot arg, where n is a number between one and
 eight.
@@ -445,13 +445,13 @@ avoid upsetting such broken devices.
 .B "SCSI tape configuration"
 Some boot time configuration of the SCSI tape driver can be achieved
 by using the following:
-
+.IP
 .in +4n
-.nf
+.EX
 .BI st= buf_size[,write_threshold[,max_bufs]]
-.fi
+.EE
 .in
-.sp
+.IP
 The first two numbers are specified in units of kB.
 The default
 .I buf_size
@@ -464,11 +464,11 @@ default value of 30kB.
 The maximum number of buffers varies
 with the number of drives detected, and has a default of two.
 An example usage would be:
-
+.IP
 .in +4n
-.nf
+.EX
 st=32,30,2
-.fi
+.EE
 .in
 .IP
 Full details can be found in the file
@@ -482,11 +482,11 @@ for older kernels) in the Linux kernel source.
 The IDE driver accepts a number of parameters, which range from disk
 geometry specifications, to support for broken controller chips.
 Drive-specific options are specified by using 'hdX=' with X in 'a'-'h'.
-
+.IP
 Non-drive-specific options are specified with the prefix 'hd='.
 Note that using a drive-specific prefix for a non-drive-specific option
 will still work, and the option will just be applied as expected.
-
+.IP
 Also note that 'hd=' can be used to refer to the next unspecified
 drive in the (a, ..., h) sequence.
 For the following discussions,
@@ -522,11 +522,11 @@ used at the same time.
 .B "The 'hd=noprobe' option"
 Do not probe for this drive.
 For example,
-
+.IP
 .in +4n
-.nf
+.EX
 hdb=noprobe hdb=1166,7,17
-.fi
+.EE
 .in
 .IP
 would disable the probe, but still specify the drive geometry so
@@ -553,11 +553,11 @@ values (C/H/S); any more or any less and it will silently ignore you.
 Also, it accepts only 'hd=' as an argument, that is, 'hda='
 and so on are not valid here.
 The format is as follows:
-
+.IP
 .in +4n
-.nf
+.EX
 hd=cyls,heads,sects
-.fi
+.EE
 .in
 .IP
 If there are two disks installed, the above is repeated with the
@@ -566,33 +566,33 @@ geometry parameters of the second disk.
 Different drivers make use of different parameters, but they all at
 least share having an IRQ, an I/O port base value, and a name.
 In its most generic form, it looks something like this:
-
+.PP
 .in +4n
-.nf
+.EX
 ether=irq,iobase[,param_1[,...param_8]],name
-.fi
+.EE
 .in
-
+.PP
 The first nonnumeric argument is taken as the name.
 The param_n values (if applicable) usually have different meanings for each
 different card/driver.
 Typical param_n values are used to specify
 things like shared memory address, interface selection, DMA channel
 and the like.
-
+.PP
 The most common use of this parameter is to force probing for a second
 ethercard, as the default is to probe only for one.
 This can be accomplished with a simple:
-
+.PP
 .in +4n
-.nf
+.EX
 ether=0,0,eth1
-.fi
+.EE
 .in
-
+.PP
 Note that the values of zero for the IRQ and I/O base in the above
 example tell the driver(s) to autoprobe.
-
+.PP
 The Ethernet-HowTo has extensive documentation on using multiple
 cards and on the card/driver-specific implementation
 of the param_n values where used.
@@ -617,25 +617,25 @@ It is described in the Linux kernel source file
 in older kernel versions).
 It accepts
 a boot argument of the form:
-
+.PP
 .in +4n
-.nf
+.EX
 sound=device1[,device2[,device3...[,device10]]]
-.fi
+.EE
 .in
-.IP
+.PP
 where each deviceN value is of the following format 0xTaaaId and the
 bytes are used as follows:
-
+.PP
 T \- device type: 1=FM, 2=SB, 3=PAS, 4=GUS, 5=MPU401, 6=SB16,
 7=SB16-MPU401
-
+.PP
 aaa \- I/O address in hex.
-
+.PP
 I \- interrupt line in hex (i.e., 10=a, 11=b, ...)
-
+.PP
 d \- DMA channel.
-
+.PP
 As you can see, it gets pretty messy, and you are better off to compile
 in your own personal values as recommended.
 Using a boot argument of
@@ -645,14 +645,14 @@ Using a boot argument of
 .B "'lp='"
 .br
 Syntax:
-
+.IP
 .in +4n
-.nf
+.EX
 lp=0
 lp=auto
 lp=reset
 lp=port[,port...]
-.fi
+.EE
 .in
 .IP
 You can tell the printer driver what ports to use and what ports not
@@ -660,7 +660,7 @@ to use.
 The latter comes in handy if you don't want the printer driver
 to claim all available parallel ports, so that other drivers
 (e.g., PLIP, PPA) can use them instead.
-
+.IP
 The format of the argument is multiple port names.
 For example,
 lp=none,parport0 would use the first parallel port for lp1, and
@@ -672,6 +672,6 @@ lp=0.
 .SH SEE ALSO
 .BR klogd (8),
 .BR mount (8)
-
+.PP
 For up-to-date information, see the kernel source file
 .IR Documentation/admin-guide/kernel-parameters.txt .
index aec1bfab712342e56fbb842a584008c03d0dbb1d..927dcff4db3167fd1d299e218ec67b4f913f681d 100644 (file)
@@ -37,8 +37,8 @@ some complex-only functions.
 Your C-compiler can work with complex numbers if it supports the C99 standard.
 Link with \fI\-lm\fP.
 The imaginary unit is represented by I.
-.sp
-.nf
+.PP
+.EX
 /* check that exp(i * pi) == \-1 */
 #include <math.h>        /* for atan */
 #include <stdio.h>
@@ -51,7 +51,7 @@ main(void)
     double complex z = cexp(I * pi);
     printf("%f + %f * i\\n", creal(z), cimag(z));
 }
-.fi
+.EE
 .SH SEE ALSO
 .BR cabs (3),
 .BR cacos (3),
index 6669816cb6aac372aa7f993773581b6f88aee4a5..347b929022e6b2a2bf9e6e22fb1ce65ed0f36e09 100644 (file)
@@ -376,13 +376,13 @@ displaying the process's
 in the two formats \fBMask Format\fR and \fBList Format\fR (see below)
 as shown in the following example:
 .PP
-.RS
-.nf
+.in +4n
+.EX
 Cpus_allowed:   ffffffff,ffffffff,ffffffff,ffffffff
 Cpus_allowed_list:     0-127
 Mems_allowed:   ffffffff,ffffffff
 Mems_allowed_list:     0-63
-.fi
+.EE
 .RE
 .PP
 The "allowed" fields were added in Linux 2.6.24;
@@ -493,12 +493,12 @@ of the to-be-released cpuset in
 The usual contents of the command
 .I /sbin/cpuset_release_agent
 is simply the shell script:
+.PP
 .in +4n
-.nf
-
+.EX
 #!/bin/sh
 rmdir /dev/cpuset/$1
-.fi
+.EE
 .in
 .PP
 As with other flag values below, this flag can
@@ -819,7 +819,7 @@ As of this writing, when this capability was introduced in Linux
 2.6.26, on certain popular architectures, the positive values of
 .I sched_relax_domain_level
 have the following meanings.
-.sp
+.PP
 .PD 0
 .IP \fB(1)\fR 4
 Perform immediate load balancing across Hyper-Thread
@@ -883,23 +883,23 @@ display all bits of the bit mask, based on the size of the bit mask.
 .PP
 Examples of the \fBMask Format\fR:
 .PP
-.RS
-.nf
+.in +4n
+.EX
 00000001                        # just bit 0 set
 40000000,00000000,00000000      # just bit 94 set
 00000001,00000000,00000000      # just bit 64 set
 000000ff,00000000               # bits 32-39 set
 00000000,000e3862               # 1,5,6,11-13,17-19 set
-.fi
-.RE
+.EE
+.in
 .PP
 A mask with bits 0, 1, 2, 4, 8, 16, 32, and 64 set displays as:
 .PP
-.RS
-.nf
+.in +4n
+.EX
 00000001,00000001,00010117
-.fi
-.RE
+.EE
+.in
 .PP
 The first "1" is for bit 64, the
 second for bit 32, the third for bit 16, the fourth for bit 8, the
@@ -915,12 +915,12 @@ numbers and ranges of numbers, in ASCII decimal.
 .PP
 Examples of the \fBList Format\fR:
 .PP
-.RS
-.nf
+.in +4n
+.EX
 0-4,9           # bits 0, 1, 2, 3, 4, and 9 set
 0-2,7,12-14     # bits 0, 1, 2, 7, 12, 13, and 14 set
-.fi
-.RE
+.EE
+.in
 .\" ================== RULES ==================
 .SH RULES
 The following rules apply to each cpuset:
@@ -1033,13 +1033,13 @@ command in some shells does not display an error message if the
 system call fails.
 .\" Gack!  csh(1)'s echo does this
 For example, if the command:
+.PP
 .in +4n
-.nf
-
+.EX
 echo 19 > cpuset.mems
-
-.fi
+.EE
 .in
+.PP
 failed because memory node 19 was not allowed (perhaps
 the current system does not have a memory node 19), then the
 .B echo
@@ -1050,12 +1050,12 @@ external command to change cpuset file settings, as this
 command will display
 .BR write (2)
 errors, as in the example:
+.PP
 .in +4n
-.nf
-
+.EX
 /bin/echo 19 > cpuset.mems
 /bin/echo: write error: Invalid argument
-.fi
+.EE
 .in
 .\" ================== EXCEPTIONS ==================
 .SH EXCEPTIONS
@@ -1368,7 +1368,7 @@ options using shell commands.
 .SS Creating and attaching to a cpuset.
 To create a new cpuset and attach the current command shell to it,
 the steps are:
-.sp
+.PP
 .PD 0
 .IP 1) 4
 mkdir /dev/cpuset (if not already done)
@@ -1386,9 +1386,9 @@ Attach the shell to the new cpuset.
 For example, the following sequence of commands will set up a cpuset
 named "Charlie", containing just CPUs 2 and 3, and memory node 1,
 and then attach the current shell to that cpuset.
+.PP
 .in +4n
-.nf
-
+.EX
 .RB "$" " mkdir /dev/cpuset"
 .RB "$" " mount \-t cpuset cpuset /dev/cpuset"
 .RB "$" " cd /dev/cpuset"
@@ -1400,14 +1400,15 @@ and then attach the current shell to that cpuset.
 # The current shell is now running in cpuset Charlie
 # The next line should display '/Charlie'
 .RB "$" " cat /proc/self/cpuset"
-.fi
+.EE
 .in
+.\"
 .SS Migrating a job to different memory nodes.
 To migrate a job (the set of processes attached to a cpuset)
 to different CPUs and memory nodes in the system, including moving
 the memory pages currently allocated to that job,
 perform the following steps.
-.sp
+.PP
 .PD 0
 .IP 1) 4
 Let's say we want to move the job in cpuset
@@ -1434,9 +1435,9 @@ to
 .PD
 .PP
 The following sequence of commands accomplishes this.
+.PP
 .in +4n
-.nf
-
+.EX
 .RB "$" " cd /dev/cpuset"
 .RB "$" " mkdir beta"
 .RB "$" " cd beta"
@@ -1444,7 +1445,7 @@ The following sequence of commands accomplishes this.
 .RB "$" " /bin/echo 8-9 > cpuset.mems"
 .RB "$" " /bin/echo 1 > cpuset.memory_migrate"
 .RB "$" " while read i; do /bin/echo $i; done < ../alpha/tasks > tasks"
-.fi
+.EE
 .in
 .PP
 The above should move any processes in
@@ -1455,11 +1456,11 @@ and any memory held by these processes on memory nodes 2-3 to memory
 nodes 8-9, respectively.
 .PP
 Notice that the last step of the above sequence did not do:
+.PP
 .in +4n
-.nf
-
+.EX
 .RB "$" " cp ../alpha/tasks tasks"
-.fi
+.EE
 .in
 .PP
 The
@@ -1478,11 +1479,11 @@ syntax that works on any shell, but alas more obscurely, by using the
 .B \-u
 (unbuffered) option of
 .BR sed (1):
+.PP
 .in +4n
-
-.nf
+.EX
 .RB "$" " sed \-un p < ../alpha/tasks > tasks"
-.fi
+.EE
 .in
 .\" ================== SEE ALSO ==================
 .SH SEE ALSO
index b8ecdef267b7ea3b3218ce73b4d81875f07f22c6..0c5723c772d9b131c4732b2dd0436f356601fc02 100644 (file)
@@ -257,7 +257,7 @@ or
 from where it stopped before.
 .PP
 .in +4n
-.nf
+.EX
 #define MAX_EVENTS 10
 struct epoll_event ev, events[MAX_EVENTS];
 int listen_sock, conn_sock, nfds, epollfd;
@@ -306,7 +306,7 @@ for (;;) {
         }
     }
 }
-.fi
+.EE
 .in
 .PP
 When used as an edge-triggered interface, for performance reasons, it is
@@ -493,13 +493,13 @@ You must consider it ready until the next (nonblocking)
 read/write yields
 .BR EAGAIN .
 When and how you will use the file descriptor is entirely up to you.
-.sp
+.IP
 For packet/token-oriented files (e.g., datagram socket,
 terminal in canonical mode),
 the only way to detect the end of the read/write I/O space
 is to continue to read/write until
 .BR EAGAIN .
-.sp
+.IP
 For stream-oriented files (e.g., pipe, FIFO, stream socket), the
 condition that the read/write I/O space is exhausted can also be detected by
 checking the amount of data read from / written to the target file