doc: Import sgml manpages from module-init-tools repo
authorRobby Workman <rworkman@slackware.com>
Thu, 12 Jan 2012 06:04:57 +0000 (00:04 -0600)
committerRobby Workman <rworkman@slackbuilds.org>
Thu, 12 Jan 2012 06:04:57 +0000 (00:04 -0600)
doc/depmod.d.sgml [new file with mode: 0644]
doc/depmod.sgml [new file with mode: 0644]
doc/insmod.sgml [new file with mode: 0644]
doc/lsmod.sgml [new file with mode: 0644]
doc/modinfo.sgml [new file with mode: 0644]
doc/modprobe.d.sgml [new file with mode: 0644]
doc/modprobe.sgml [new file with mode: 0644]
doc/modules.dep.sgml [new file with mode: 0644]
doc/rmmod.sgml [new file with mode: 0644]

diff --git a/doc/depmod.d.sgml b/doc/depmod.d.sgml
new file mode 100644 (file)
index 0000000..d055db1
--- /dev/null
@@ -0,0 +1,130 @@
+<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
+  <!ENTITY debian  "<productname>Debian GNU/Linux</productname>">
+  <!ENTITY docbook "<productname>DocBook</productname>">
+  <!ENTITY sgml    "<abbrev>SGML</abbrev>">
+]>
+
+<!-- Stolen from manual page for docbook-to-man, DocBook source file
+     (C) 1999 W. Borgert debacle@debian.org
+
+     $Id: docbook-to-man.sgml,v 1.8 2002/04/27 15:28:02 debacle Exp $ -->
+
+<refentry>
+  <refentryinfo>
+    <address>
+      <email>jcm@jonmasters.org</email>
+    </address>
+    <author>
+      <firstname>Jon</firstname>
+      <surname>Masters</surname>
+    </author>
+    <date>2010-03-01</date>
+  </refentryinfo>
+  <refmeta>
+    <refentrytitle>depmod.conf</refentrytitle>
+    <manvolnum>5</manvolnum>
+  </refmeta>
+  <refnamediv>
+    <refname>depmod.conf</refname><refname>depmod.d</refname> <refpurpose>Configuration file/directory for depmod</refpurpose>
+  </refnamediv>
+  <refsect1>
+    <title>DESCRIPTION</title>
+
+    <para>The order in which modules are processed by the
+      <command>depmod</command> command can be altered on a global or
+      per-module basis. This is typically useful in cases where built-in
+      kernel modules are complemented by custom built versions of the
+      same and the user wishes to affect the priority of processing in
+      order to override the module version supplied by the kernel.
+    </para>
+    <para>
+      The format of <filename>depmod.conf</filename> and files under <filename>depmod.d</filename> is simple: one
+      command per line, with blank lines and lines starting with '#'
+      ignored (useful for adding comments).  A '\' at the end of a line
+      causes it to continue on the next line, which makes the file a
+      bit neater.
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>COMMANDS</title>
+    <variablelist>
+      <varlistentry>
+        <term>search <replaceable>subdirectory...</replaceable>
+        </term>
+       <listitem>
+         <para>
+           This allows you to specify the order in which /lib/modules
+           (or other configured module location) subdirectories will
+           be processed by <command>depmod</command>. Directories are
+           listed in order, with the highest priority given to the
+           first listed directory and the lowest priority given to the last
+           directory listed. The special keyword <command>built-in</command> 
+           refers to the standard module directories installed by the kernel.
+         </para>
+         <para>
+           By default, depmod will give a higher priority to 
+           a directory with the name <command>updates</command>
+           using this built-in search string: "updates built-in"
+           but more complex arrangements are possible and are
+           used in several popular distributions.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term>override <replaceable>modulename</replaceable> <replaceable>kernelversion</replaceable> <replaceable>modulesubdirectory</replaceable>
+        </term>
+       <listitem>
+         <para>
+           This command allows you to override which version of a
+           specific module will be used when more than one module
+           sharing the same name is processed by the
+           <command>depmod</command> command. It is possible to
+           specify one kernel or all kernels using the * wildcard.
+           <replaceable>modulesubdirectory</replaceable> is the
+           name of the subdirectory under /lib/modules (or other
+           module location) where the target module is installed.
+         </para>
+         <para>
+           For example, it is possible to override the priority of
+           an updated test module called <command>kmod</command> by
+           specifying the following command: "override kmod * extra".
+           This will ensure that any matching module name installed
+           under the <command>extra</command> subdirectory within
+           /lib/modules (or other module location) will take priority
+           over any likenamed module already provided by the kernel.
+         </para>
+        </listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+  <refsect1>
+    <title>COPYRIGHT</title>
+    <para>
+      This manual page Copyright 2006-2010, Jon Masters, Red Hat, Inc.
+    </para>
+  </refsect1>
+    <refsect1>
+    <title>SEE ALSO</title>
+    <para><citerefentry>
+       <refentrytitle>depmod</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>
+    </para>
+  </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:2
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:nil
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+-->
diff --git a/doc/depmod.sgml b/doc/depmod.sgml
new file mode 100644 (file)
index 0000000..4f3783e
--- /dev/null
@@ -0,0 +1,306 @@
+<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
+  <!ENTITY debian  "<productname>Debian GNU/Linux</productname>">
+  <!ENTITY docbook "<productname>DocBook</productname>">
+  <!ENTITY sgml    "<abbrev>SGML</abbrev>">
+]>
+
+<!-- Stolen from manual page for docbook-to-man, DocBook source file
+     (C) 1999 W. Borgert debacle@debian.org
+
+     $Id: docbook-to-man.sgml,v 1.8 2002/04/27 15:28:02 debacle Exp $ -->
+
+<refentry>
+  <refentryinfo>
+    <address>
+      <email>jcm@jonmasters.org</email>
+    </address>
+    <author>
+      <firstname>Jon</firstname>
+      <surname>Masters</surname>
+    </author>
+    <date>2011-05-31</date>
+  </refentryinfo>
+  <refmeta>
+    <refentrytitle>depmod</refentrytitle>
+    <manvolnum>8</manvolnum>
+  </refmeta>
+  <refnamediv>
+    <refname>depmod</refname> <refpurpose>program to generate <filename>modules.dep</filename> and map files.</refpurpose>
+  </refnamediv>
+  <refsynopsisdiv>
+    <cmdsynopsis>
+      <command>depmod</command>
+      <arg><option>-b <replaceable>basedir</replaceable></option></arg>
+      <arg><option>-e</option></arg>
+      <arg><option>-E <replaceable>Module.symvers</replaceable></option></arg>
+      <arg><option>-F <replaceable>System.map</replaceable></option></arg>
+      <arg><option>-m</option></arg>
+      <arg><option>-n</option></arg>
+      <arg><option>-v</option></arg>
+      <arg><option>-A</option></arg>
+      <arg><option>-P <replaceable>prefix</replaceable></option></arg>
+      <arg><option>-w</option></arg>
+      <arg><option><replaceable>version</replaceable></option></arg>
+    </cmdsynopsis>
+    <cmdsynopsis>
+      <command>depmod</command>
+      <arg><option>-e</option></arg>
+      <arg><option>-E <replaceable>Module.symvers</replaceable></option></arg>
+      <arg><option>-F <replaceable>System.map</replaceable></option></arg>
+      <arg><option>-m</option></arg>
+      <arg><option>-n</option></arg>
+      <arg><option>-v</option></arg>
+      <arg><option>-P <replaceable>prefix</replaceable></option></arg>
+      <arg><option>-w</option><arg>
+      <arg><option><replaceable>version</replaceable></option></arg>
+      <arg rep='repeat'><option><replaceable>filename</replaceable></option></arg>
+    </cmdsynopsis>
+  </refsynopsisdiv>
+  <refsect1>
+    <title>DESCRIPTION</title>
+    <para>
+      Linux kernel modules can provide services (called "symbols") for
+      other modules to use (using one of the EXPORT_SYMBOL variants in the
+      code).  If a second module uses this symbol, that second module clearly
+      depends on the first module.  These dependencies can get quite complex.
+    </para>
+    <para>
+      <command>depmod</command> creates a list of module dependencies
+      by reading each module under
+      <filename>/lib/modules/</filename><replaceable>version</replaceable> 
+      and determining what symbols it exports and what symbols it
+      needs.  By default, this list is written to
+      <filename>modules.dep</filename>, and a binary hashed version named
+      <filename>modules.dep.bin</filename>, in the same directory.  If
+      filenames are given on the command line, only those modules are
+      examined (which is rarely useful unless all modules are listed).
+      <command>depmod</command> also creates a list of symbols provided
+      by modules in the file named <filename>modules.symbols</filename>
+      and its binary hashed version, <filename>modules.symbols.bin</filename>.
+      Finally, <command>depmod</command> will output a file named
+      <filename>modules.devname</filename> if modules supply special
+      device names (devname) that should be populated in /dev on boot
+      (by a utility such as udev).
+    </para>
+    <para>
+      If a <replaceable>version</replaceable> is provided, then that
+      kernel version's module directory is used rather than the
+      current kernel version (as returned by <command>uname -r</command>).
+    </para>
+    <para>
+      <command>depmod</command> will also generate various legacy map
+      files in the output directory for use by the older hotplug
+      infrastructure. These map files are largely deprecated.
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>OPTIONS</title>
+    <variablelist>
+      <varlistentry>
+          <term><option>-a</option> <option>--all</option>
+          </term>
+          <listitem>
+            <para>
+              Probe all modules. This option is enabled by default if no
+              file names are given in the command-line.
+            </para>
+          </listitem>
+      </varlistentry>
+      <varlistentry>
+          <term><option>-A</option> <option>--quick</option>
+          </term>
+          <listitem>
+            <para>
+              This option scans to see if any modules are newer than the
+              <filename>modules.dep</filename> file before any work is done:
+              if not, it silently exits rather than regenerating the files.
+            </para>
+          </listitem>
+      </varlistentry>
+      <varlistentry>
+         <term><option>-b <replaceable>basedir</replaceable></option> <option>--basedir <replaceable>basedir</replaceable></option>
+         </term>
+         <listitem>
+           <para>
+             If your modules are not currently in the (normal)
+             directory
+             <filename>/lib/modules/</filename><replaceable>version</replaceable>,
+             but in a staging area, you can specify a
+             <replaceable>basedir</replaceable> which is prepended to
+             the directory name.  This
+             <replaceable>basedir</replaceable> is stripped from the
+             resulting <filename>modules.dep</filename> file, so it
+             is ready to be moved into the normal location. Use this option
+             if you are a distribution vendor who needs to pre-generate the
+             meta-data files rather than running depmod again later.
+           </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-C</option> <option>--config <replaceable>file or directory</replaceable></option>
+        </term>
+        <listitem>
+          <para>
+            This option overrides the default configuration file at
+            <filename>/etc/depmod.conf</filename> (or the 
+            <filename>/etc/depmod.d/</filename> directory if that is not found).
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-e</option> <option>--errsyms</option>
+        </term>
+         <listitem>
+           <para>
+             When combined with the <option>-F</option> option, this
+             reports any symbols which a module needs which are not
+             supplied by other modules or the kernel.  Normally, any
+             symbols not provided by modules are assumed to be
+             provided by the kernel (which should be true in a
+             perfect world), but this assumption can break espencially
+             when additionally updated third party drivers are not
+             correctly installed or were built incorrectly.
+           </para>
+         </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-E</option> <option>--symvers</option>
+        </term>
+          <listitem>
+            <para>
+              When combined with the <option>-e</option> option, this
+              reports any symbol versions supplied by modules that do
+              not match with the symbol versions provided by the
+              kernel in its <filename>Module.symvers</filename>.
+              This option is mutually incompatible with <option>-F</option>.
+            </para>
+          </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-F</option> <option>--filesyms <replaceable>System.map</replaceable></option>
+        </term>
+        <listitem>
+          <para>
+           Supplied with the <filename>System.map</filename> produced
+           when the kernel was built, this allows the
+           <option>-e</option> option to report unresolved symbols.
+           This option is mutually incompatible with <option>-E</option>.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-h</option> <option>--help</option>
+        </term>
+        <listitem>
+          <para>
+            Print the help message and exit.
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-m</option>
+        </term>
+        <listitem>
+          <para>
+            This overrides any possible configuration file setting of
+            <option>make_map_files</option> and forces the generation
+            of legacy map files, such as <filename>modules.pcimap</filename>.
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-n</option> <option>--dry-run</option>
+        </term>
+        <listitem>
+          <para>
+           This sends the resulting modules.dep and the various
+           map files to standard output rather than writing them into
+           the module directory.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-P</option>
+        </term>
+        <listitem>
+          <para>
+            Some architectures prefix symbols with an extraneous character.
+            This specifies a prefix character (for example '_') to ignore.
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-v</option> <option>--verbose</option>
+        </term>
+        <listitem>
+          <para>
+           In verbose mode, <command>depmod</command> will print (to stdout)
+            all the symbols each module depends on and the module's file name
+            which provides that symbol.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-V</option> <option>--version</option>
+        </term>
+        <listitem>
+          <para>
+            Show version of program and exit. See below for caveats when
+            run on older kernels.
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-w</option>
+        </term>
+        <listitem>
+          <para>
+            Warn on duplicate dependencies, aliases, symbol versions, etc.
+          </para>
+        </listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+  <refsect1>
+    <title>COPYRIGHT</title>
+
+    <para>
+      This manual page originally Copyright 2002, Rusty Russell,
+      IBM Corporation. Portions Copyright Jon Masters, and others.
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>SEE ALSO</title>
+    <para>
+      <citerefentry>
+       <refentrytitle>depmod.conf</refentrytitle><manvolnum>5</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+       <refentrytitle>depmod.d</refentrytitle><manvolnum>5</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+       <refentrytitle>modprobe</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+       <refentrytitle>modules.dep</refentrytitle><manvolnum>5</manvolnum>
+      </citerefentry>
+    </para>
+  </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:2
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:nil
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+-->
diff --git a/doc/insmod.sgml b/doc/insmod.sgml
new file mode 100644 (file)
index 0000000..ab3a4e8
--- /dev/null
@@ -0,0 +1,94 @@
+<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
+  <!ENTITY debian  "<productname>Debian GNU/Linux</productname>">
+  <!ENTITY docbook "<productname>DocBook</productname>">
+  <!ENTITY sgml    "<abbrev>SGML</abbrev>">
+]>
+
+<!-- Stolen from manual page for docbook-to-man, DocBook source file
+     (C) 1999 W. Borgert debacle@debian.org
+
+     $Id: docbook-to-man.sgml,v 1.8 2002/04/27 15:28:02 debacle Exp $ -->
+
+<refentry>
+  <refentryinfo>
+    <address>
+      <email>jcm@jonmasters.org</email>
+    </address>
+    <author>
+      <firstname>Jon</firstname>
+      <surname>Masters</surname>
+    </author>
+    <date>2010-03-01</date>
+  </refentryinfo>
+  <refmeta>
+    <refentrytitle>insmod</refentrytitle>
+    <manvolnum>8</manvolnum>
+  </refmeta>
+  <refnamediv>
+    <refname>insmod</refname> <refpurpose>simple program to insert a module into the Linux Kernel</refpurpose>
+  </refnamediv>
+  <refsynopsisdiv>
+    <cmdsynopsis>
+      <command>insmod</command>
+      <arg><replaceable>filename</replaceable></arg>
+      <arg rep='repeat'><replaceable>module options</replaceable></arg>
+    </cmdsynopsis>
+  </refsynopsisdiv>
+  <refsect1>
+    <title>DESCRIPTION</title>
+
+    <para><command>insmod</command> is a trivial program to insert a
+       module into the kernel: if the
+       <replaceable>filename</replaceable> is a hyphen, the module is
+       taken from standard input. Most users will want to use
+       <citerefentry><refentrytitle>modprobe</refentrytitle>
+       <manvolnum>8</manvolnum> </citerefentry> instead, which is
+       more clever and can handle module dependencies.</para>
+
+    <para>Only the most general of error messages are reported: as the
+       work of trying to link the module is now done inside the kernel,
+       the <command>dmesg</command> usually gives more information
+       about errors.</para>
+  </refsect1>
+  <refsect1>
+    <title>COPYRIGHT</title>
+    <para>
+      This manual page originally Copyright 2002, Rusty Russell, IBM
+      Corporation. Maintained by Jon Masters and others.
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>SEE ALSO</title>
+
+    <para><citerefentry>
+       <refentrytitle>modprobe</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+       <refentrytitle>rmmod</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+       <refentrytitle>lsmod</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>
+      <citerefentry>
+       <refentrytitle>modinfo</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>
+    </para>
+  </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:2
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:nil
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+-->
diff --git a/doc/lsmod.sgml b/doc/lsmod.sgml
new file mode 100644 (file)
index 0000000..0267451
--- /dev/null
@@ -0,0 +1,83 @@
+<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
+  <!ENTITY debian  "<productname>Debian GNU/Linux</productname>">
+  <!ENTITY docbook "<productname>DocBook</productname>">
+  <!ENTITY sgml    "<abbrev>SGML</abbrev>">
+]>
+
+<!-- Stolen from manual page for docbook-to-man, DocBook source file
+     (C) 1999 W. Borgert debacle@debian.org
+
+     $Id: docbook-to-man.sgml,v 1.8 2002/04/27 15:28:02 debacle Exp $ -->
+
+<refentry>
+  <refentryinfo>
+    <address>
+      <email>jcm@jonmasters.org</email>
+    </address>
+    <author>
+      <firstname>Jon</firstname>
+      <surname>Masters</surname>
+    </author>
+    <date>2010-03-01</date>
+  </refentryinfo>
+  <refmeta>
+    <refentrytitle>lsmod</refentrytitle>
+    <manvolnum>8</manvolnum>
+  </refmeta>
+  <refnamediv>
+    <refname>lsmod</refname> <refpurpose>program to show the status of modules in the Linux Kernel</refpurpose>
+  </refnamediv>
+  <refsynopsisdiv>
+    <cmdsynopsis>
+      <command>lsmod</command>
+    </cmdsynopsis>
+  </refsynopsisdiv>
+  <refsect1>
+    <title>DESCRIPTION</title>
+
+    <para><command>lsmod</command> is a trivial program which nicely
+      formats the contents of the <filename>/proc/modules</filename>,
+      showing what kernel modules are currently loaded.
+    </para>
+
+  </refsect1>
+  <refsect1>
+    <title>COPYRIGHT</title>
+    <para>
+      This manual page originally Copyright 2002, Rusty Russell, IBM
+      Corporation. Maintained by Jon Masters and others.
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>SEE ALSO</title>
+
+    <para>
+      <citerefentry>
+       <refentrytitle>insmod</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+       <refentrytitle>modprobe</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+       <refentrytitle>modinfo</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>
+</para>
+  </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:2
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:nil
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+-->
diff --git a/doc/modinfo.sgml b/doc/modinfo.sgml
new file mode 100644 (file)
index 0000000..8c72eef
--- /dev/null
@@ -0,0 +1,169 @@
+<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
+  <!ENTITY debian  "<productname>Debian GNU/Linux</productname>">
+  <!ENTITY docbook "<productname>DocBook</productname>">
+  <!ENTITY sgml    "<abbrev>SGML</abbrev>">
+]>
+
+<!-- Stolen from manual page for docbook-to-man, DocBook source file
+     (C) 1999 W. Borgert debacle@debian.org
+
+     $Id: docbook-to-man.sgml,v 1.8 2002/04/27 15:28:02 debacle Exp $ -->
+
+<refentry>
+  <refentryinfo>
+    <address>
+      <email>jcm@jonmasters.org</email>
+    </address>
+    <author>
+      <firstname>Jon</firstname>
+      <surname>Masters</surname>
+    </author>
+    <date>2010-03-01</date>
+  </refentryinfo>
+  <refmeta>
+    <refentrytitle>modinfo</refentrytitle>
+    <manvolnum>8</manvolnum>
+  </refmeta>
+  <refnamediv>
+    <refname>modinfo</refname> <refpurpose>program to show information about a Linux Kernel module</refpurpose>
+  </refnamediv>
+  <refsynopsisdiv>
+    <cmdsynopsis>
+      <command>modinfo</command>
+      <arg><option>-0</option></arg>
+      <arg><option>-F <replaceable>field</replaceable></option></arg>
+      <arg><option>-k <replaceable>kernel</replaceable></option></arg>
+      <arg rep='repeat'>modulename|filename</arg>
+    </cmdsynopsis>
+    <cmdsynopsis>
+      <command>modinfo -V</command>
+    </cmdsynopsis>
+    <cmdsynopsis>
+      <command>modinfo -h</command>
+    </cmdsynopsis>
+  </refsynopsisdiv>
+  <refsect1>
+    <title>DESCRIPTION</title>
+
+    <para><command>modinfo</command> extracts information from the Linux
+      Kernel modules given on the command line.  If the module name is
+      not a filename, then the
+      <filename>/lib/modules/</filename><replaceable>version</replaceable>
+      directory is searched, as is also done by
+      <citerefentry><refentrytitle>modprobe</refentrytitle><manvolnum>8</manvolnum></citerefentry> when loading kernel modules.
+    </para>
+
+    <para><command>modinfo</command> by default lists each attribute
+      of the module in form <replaceable>fieldname</replaceable> :
+      <replaceable>value</replaceable>, for easy reading.  The
+      filename is listed the same way (although it's not really an
+      attribute).
+    </para>
+
+    <para>This version of <command>modinfo</command> can understand
+    modules of any Linux Kernel architecture.</para>
+  </refsect1>
+  <refsect1>
+    <title>OPTIONS</title>
+    <variablelist>
+      <varlistentry>
+        <term><option>-V</option> <option>--version</option>
+        </term>
+        <listitem>
+          <para>
+           Print the modinfo version.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-F</option> <option>--field</option>
+        </term>
+        <listitem>
+          <para>
+           Only print this field value, one per line.  This is most
+           useful for scripts.  Field names are case-insenitive.
+           Common fields (which may not be in every module) include
+           <literal>author</literal>, <literal>description</literal>,
+           <literal>license</literal>, <literal>parm</literal>,
+           <literal>depends</literal>, and <literal>alias</literal>.
+           There are often multiple <literal>parm</literal>,
+           <literal>alias</literal> and <literal>depends</literal>
+           fields.  The special field <literal>filename</literal>
+           lists the filename of the module.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-k <replaceable>kernel</replaceable></option>
+        </term>
+        <listitem>
+          <para>
+            Provide information about a kernel other than the running one. This
+            is particularly useful for distributions needing to extract
+            information from a newly installed (but not yet running) set of
+            kernel modules. For example, you wish to find which firmware files
+            are needed by various modules in a new kernel for which you must
+            make an initrd/initramfs image prior to booting.
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-0</option> <option>--null</option>
+        </term>
+        <listitem>
+          <para>
+           Use the ASCII zero character to separate field values,
+           instead of a new line.  This is useful for scripts, since
+           a new line can theoretically appear inside a field.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-a</option> <option>-d</option> <option>-l</option> <option>-p</option> <option>-n</option>
+        </term>
+        <listitem>
+          <para>
+           These are shortcuts for <literal>author</literal>,
+           <literal>description</literal>,
+           <literal>license</literal>.  <literal>parm</literal> and
+           <literal>filename</literal> respectively, to ease the
+           transition from the old modutils
+           <command>modinfo</command>.
+         </para>
+        </listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+  <refsect1>
+    <title>COPYRIGHT</title>
+    <para>
+      This manual page originally Copyright 2003, Rusty Russell, IBM
+      Corporation. Maintained by Jon Masters and others.
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>SEE ALSO</title>
+
+    <para><citerefentry>
+       <refentrytitle>modprobe</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>
+</para>
+  </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:2
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:nil
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+-->
diff --git a/doc/modprobe.d.sgml b/doc/modprobe.d.sgml
new file mode 100644 (file)
index 0000000..74fdb7c
--- /dev/null
@@ -0,0 +1,255 @@
+<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
+  <!ENTITY debian  "<productname>Debian GNU/Linux</productname>">
+  <!ENTITY docbook "<productname>DocBook</productname>">
+  <!ENTITY sgml    "<abbrev>SGML</abbrev>">
+]>
+
+<!-- Stolen from manual page for docbook-to-man, DocBook source file
+     (C) 1999 W. Borgert debacle@debian.org
+
+     $Id: docbook-to-man.sgml,v 1.8 2002/04/27 15:28:02 debacle Exp $ -->
+
+<refentry>
+  <refentryinfo>
+    <address>
+      <email>jcm@jonmasters.org</email>
+    </address>
+    <author>
+      <firstname>Jon</firstname>
+      <surname>Masters</surname>
+    </author>
+    <date>2010-03-09</date>
+  </refentryinfo>
+  <refmeta>
+    <refentrytitle>modprobe.conf</refentrytitle>
+    <manvolnum>5</manvolnum>
+  </refmeta>
+  <refnamediv>
+    <refname>modprobe.d</refname><refname>modprobe.conf</refname> <refpurpose>Configuration directory/file for modprobe</refpurpose>
+  </refnamediv>
+  <refsect1>
+    <title>DESCRIPTION</title>
+
+    <para>Because the <command>modprobe</command> command can add or
+      remove more than one module, due to modules having dependencies,
+      we need a method of specifying what options are to be used with
+      those modules.  All files underneath the 
+      <filename>/etc/modprobe.d</filename> directory which end with the
+      <filename>.conf</filename> extension specify those options as
+      required. (the <filename>/etc/modprobe.conf</filename> file can
+      also be used if it exists, but that will be removed in a future 
+      version).  They can also be used to create convenient aliases: 
+      alternate names for a module, or they can override the normal 
+      <command>modprobe</command> behavior altogether for those with 
+      special requirements (such as inserting more than one module).
+    </para>
+    <para>
+      Note that module and alias names (like other module names) can
+      have - or _ in them: both are interchangable throughout all the
+      module commands as underscore conversion happens automatically.
+    </para>
+    <para>
+      The format of and files under <filename>modprobe.d</filename> and
+      <filename>/etc/modprobe.conf</filename> is simple: one
+      command per line, with blank lines and lines starting with '#'
+      ignored (useful for adding comments).  A '\' at the end of a line
+      causes it to continue on the next line, which makes the file a
+      bit neater.
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>COMMANDS</title>
+    <variablelist>
+      <varlistentry>
+        <term>alias <replaceable>wildcard</replaceable> <replaceable>modulename</replaceable>
+        </term>
+       <listitem>
+         <para>
+           This allows you to give alternate names for a module.  For
+           example: "alias my-mod really_long_modulename"
+           means you can use "modprobe my-mod" instead of "modprobe
+           really_long_modulename".  You can also use shell-style
+           wildcards, so "alias my-mod* really_long_modulename"
+           means that "modprobe my-mod-something" has the same
+           effect.  You can't have aliases to other aliases (that
+           way lies madness), but aliases can have options, which
+           will be added to any other options.
+         </para>
+         <para>
+           Note that modules can also contain their own aliases,
+           which you can see using <command>modinfo</command>.  These
+           aliases are used as a last resort (ie. if there is no real
+           module, <command>install</command>,
+           <command>remove</command>, or <command>alias</command>
+           command in the configuration).
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term>blacklist <replaceable>modulename</replaceable>
+        </term>
+       <listitem>
+         <para>
+           Modules can contain their own aliases: usually these are
+           aliases describing the devices they support, such as
+           "pci:123...".  These "internal" aliases can be overridden
+           by normal "alias" keywords, but there are cases where two
+           or more modules both support the same devices, or a module
+           invalidly claims to support a device that it does not: the
+           <command>blacklist</command> keyword indicates that all of
+           that particular module's internal aliases are to be ignored.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term>install <replaceable>modulename</replaceable> <replaceable>command...</replaceable>
+        </term>
+       <listitem>
+         <para>
+           This command instructs <command>modprobe</command> to run your
+           command instead of inserting the module in the kernel as normal.
+           The command can be any shell command: this allows you to do any
+           kind of complex processing you might wish.  For example, if the
+           module "fred" works better with the module "barney"
+           already installed (but it doesn't depend on it, so
+           <command>modprobe</command> won't automatically load it),
+           you could say "install fred /sbin/modprobe barney;
+           /sbin/modprobe --ignore-install fred", which would do what
+           you wanted.  Note the <option>--ignore-install</option>,
+           which stops the second <command>modprobe</command> from
+           running the same <command>install</command> command again.
+           See also <command>remove</command> below.
+         </para>
+         <para>The long term future of this command as a solution to the
+           problem of providing additional module dependencies is not assured
+           and it is intended to replace this command with a warning about
+           its eventual removal or deprecation at some point in a future
+           release. Its use complicates the automated determination of module
+           dependencies by distribution utilities, such as mkinitrd (because
+           these now need to somehow interpret what the
+           <command>install</command> commands might be doing.
+           In a perfect world, modules would provide all dependency
+           information without the use of this command and work is underway
+           to implement soft dependency support within the Linux kernel.
+         </para>
+         <para>
+           If you use the string "$CMDLINE_OPTS" in the command, it
+           will be replaced by any options specified on the modprobe
+           command line.  This can be useful because users expect
+           "modprobe fred opt=1" to pass the "opt=1" arg to the
+           module, even if there's an install command in the
+           configuration file.  So our above example becomes "install
+           fred /sbin/modprobe barney; /sbin/modprobe
+           --ignore-install fred $CMDLINE_OPTS"
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term>options <replaceable>modulename</replaceable> <replaceable>option...</replaceable>
+        </term>
+       <listitem>
+         <para>
+           This command allows you to add options to the module
+           <replaceable>modulename</replaceable> (which might be an
+           alias) every time it is inserted into the kernel: whether
+           directly (using <command>modprobe</command> 
+           <replaceable>modulename</replaceable> or because the
+           module being inserted depends on this module.
+         </para>
+         <para>
+           All options are added together: they can come from an
+           <command>option</command> for the module itself, for an
+           alias, and on the command line.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term>remove <replaceable>modulename</replaceable> <replaceable>command...</replaceable>
+        </term>
+       <listitem>
+         <para>
+           This is similar to the <command>install</command> command
+           above, except it is invoked when "modprobe -r" is run.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term>softdep <replaceable>modulename</replaceable> pre: <replaceable>modules...</replaceable> post: <replaceable>modules...</replaceable>
+        </term>
+       <listitem>
+         <para>
+            The <command>softdep</command> command allows you to specify soft,
+            or optional, module dependencies. <replaceable>modulename</replaceable>
+            can be used without these optional modules installed, but usually with
+            some features missing. For example, a driver for a storage HBA might
+            require another module be loaded in order to use management features.
+         </para>
+         <para>
+            pre-deps and post-deps modules are lists of names and/or aliases of other
+            modules that modprobe will attempt to install (or remove) in order
+            before and after the main module given in the
+            <replaceable>modulename</replaceable> argument.
+         </para>
+         <para>
+            Example: Assume "softdep c pre: a b post: d e" is provided in the
+            configuration. Running "modprobe c" is now equivalent to
+            "modprobe a b c d e" without the softdep.
+            Flags such as --use-blacklist are applied to all the specified
+            modules, while module parameters only apply to module c.
+         </para>
+         <para>
+            Note: if there are <command>install</command> or
+            <command>remove</command> commands with the same
+            <replaceable>modulename</replaceable> argument,
+            <command>softdep</command> takes precedence.
+         </para>
+        </listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+  <refsect1>
+    <title>COMPATIBILITY</title>
+    <para>
+      A future version of module-init-tools will come with a strong warning
+      to avoid use of the <command>install</command> as explained above. This
+      will happen once support for soft dependencies in the kernel is complete.
+      That support will complement the existing softdep support within this
+      utility by providing such dependencies directly within the modules.
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>COPYRIGHT</title>
+    <para>
+      This manual page originally Copyright 2004, Rusty Russell, IBM
+      Corporation. Maintained by Jon Masters and others.
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>SEE ALSO</title>
+
+    <para><citerefentry>
+       <refentrytitle>modprobe</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+       <refentrytitle>modules.dep</refentrytitle><manvolnum>5</manvolnum>
+      </citerefentry>
+    </para>
+  </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:2
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:nil
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+-->
diff --git a/doc/modprobe.sgml b/doc/modprobe.sgml
new file mode 100644 (file)
index 0000000..85330e1
--- /dev/null
@@ -0,0 +1,500 @@
+<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
+  <!ENTITY debian  "<productname>Debian GNU/Linux</productname>">
+  <!ENTITY docbook "<productname>DocBook</productname>">
+  <!ENTITY sgml    "<abbrev>SGML</abbrev>">
+]>
+
+<!-- Stolen from manual page for docbook-to-man, DocBook source file
+     (C) 1999 W. Borgert debacle@debian.org
+
+     $Id: docbook-to-man.sgml,v 1.8 2002/04/27 15:28:02 debacle Exp $ -->
+
+<refentry>
+  <refentryinfo>
+    <address>
+      <email>jcm@jonmasters.org</email>
+    </address>
+    <author>
+      <firstname>Jon</firstname>
+      <surname>Masters</surname>
+    </author>
+    <date>2010-03-01</date>
+  </refentryinfo>
+  <refmeta>
+    <refentrytitle>modprobe</refentrytitle>
+    <manvolnum>8</manvolnum>
+  </refmeta>
+  <refnamediv>
+    <refname>modprobe</refname> <refpurpose>program to add and remove modules from the Linux Kernel</refpurpose>
+  </refnamediv>
+  <refsynopsisdiv>
+    <cmdsynopsis>
+      <command>modprobe</command>
+      <arg><option>-v</option></arg>
+      <arg><option>-V</option></arg>
+      <arg><option>-C <replaceable>config-file</replaceable></option></arg>
+      <arg><option>-n</option></arg>
+      <arg><option>-i</option></arg>
+      <arg><option>-q</option></arg>
+      <arg><option>-b</option></arg>
+      <arg><replaceable>modulename</replaceable></arg>
+      <arg rep='repeat'><option><replaceable>module parameters</replaceable></option></arg>
+    </cmdsynopsis>
+    <cmdsynopsis>
+      <command>modprobe</command>
+      <arg>-r</arg>
+      <arg><option>-v</option></arg>
+      <arg><option>-n</option></arg>
+      <arg><option>-i</option></arg>
+      <arg rep='repeat'><option><replaceable>modulename</replaceable></option></arg>
+    </cmdsynopsis>
+    <cmdsynopsis>
+      <command>modprobe</command>
+      <arg>-l</arg>
+      <arg>-t <replaceable>dirname</replaceable></arg>
+      <arg><option><replaceable>wildcard</replaceable></option></arg>
+    </cmdsynopsis>
+    <cmdsynopsis>
+      <command>modprobe</command>
+      <arg>-c</arg>
+    </cmdsynopsis>
+    <cmdsynopsis>
+      <command>modprobe</command>
+      <arg>--dump-modversions</arg> <arg><replaceable>filename</replaceable></arg>
+    </cmdsynopsis>
+  </refsynopsisdiv>
+  <refsect1>
+    <title>Description</title>
+
+    <para>
+      <command>modprobe</command> intelligently adds or removes a
+      module from the Linux kernel: note that for convenience, there
+      is no difference between _ and - in module names (automatic
+      underscore conversion is performed).
+      <command>modprobe</command> looks in the module directory
+      <filename>/lib/modules/`uname -r`</filename> for all
+      the modules and other files, except for the optional
+      <filename>/etc/modprobe.conf</filename> configuration file and
+      <filename>/etc/modprobe.d</filename> directory
+      (see <citerefentry>
+       <refentrytitle>modprobe.conf</refentrytitle><manvolnum>5</manvolnum>
+      </citerefentry>). <command>modprobe</command> will also use module
+      options specified on the kernel command line in the form of
+      &lt;module&gt;.&lt;option&gt;.
+    </para>
+    <para>
+      Note that unlike in 2.4 series Linux kernels (which are not supported
+      by this tool) this version of <command>modprobe</command> does not
+      do anything to the module itself: the work of resolving symbols
+      and understanding parameters is done inside the kernel.  So
+      module failure is sometimes accompanied by a kernel message: see
+      <citerefentry>
+       <refentrytitle>dmesg</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>.
+    </para>
+    <para>
+      <command>modprobe</command> expects an up-to-date
+      <filename>modules.dep.bin</filename> file (or fallback human
+      readable <filename>modules.dep</filename> file), as generated
+      by the corresponding <command>depmod</command> utility shipped
+      along with <command>modprobe</command> (see
+      <citerefentry><refentrytitle>depmod</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>).  This file lists what other modules each
+      module needs (if any), and <command>modprobe</command> uses this
+      to add or remove these dependencies automatically.
+    </para>
+    <para>
+      If any arguments are given after the
+      <replaceable>modulename</replaceable>, they are passed to the
+      kernel (in addition to any options listed in the configuration
+      file).
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>OPTIONS</title>
+    <variablelist>
+      <varlistentry>
+        <term><option>-a</option> <option>--all</option>
+        </term>
+        <listitem>
+          <para>Insert all module names on the command line.
+        </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-b</option> <option>--use-blacklist</option>
+        </term>
+        <listitem>
+         <para>
+           This option causes <command>modprobe</command> to apply the
+           <command>blacklist</command> commands in the configuration files
+           (if any) to module names as well.  It is usually used by
+           <citerefentry>
+             <refentrytitle>udev</refentrytitle><manvolnum>7</manvolnum>
+           </citerefentry>.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-C</option> <option>--config</option>
+        </term>
+        <listitem>
+          <para>This option overrides the default configuration directory/file
+               (<filename>/etc/modprobe.d</filename> or 
+               <filename>/etc/modprobe.conf</filename>).
+         </para>
+          <para>
+           This option is passed through <command>install</command>
+           or <command>remove</command> commands to other
+           <command>modprobe</command> commands in the
+           MODPROBE_OPTIONS environment variable.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-c</option> <option>--showconfig</option>
+        </term>
+        <listitem>
+          <para>Dump out the effective configuration from the config directory
+                and exit.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--dump-modversions</option>
+        </term>
+        <listitem>
+          <para>
+            Print out a list of module versioning information required by a
+            module. This option is commonly used by distributions in order to
+            package up a Linux kernel module using module versioning deps.
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-d</option> <option>--dirname</option>
+        </term>
+        <listitem>
+          <para>
+            Directory where modules can be found,
+            <filename>/lib/modules/<replaceable>RELEASE</replaceable></filename>
+            by default.
+          </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--first-time</option>
+        </term>
+        <listitem>
+          <para>
+           Normally, <command>modprobe</command> will succeed (and do
+           nothing) if told to insert a module which is already
+           present or to remove a module which isn't present.  This is
+           ideal for simple scripts; however, more complicated scripts often
+           want to know whether <command>modprobe</command> really
+           did something: this option makes modprobe fail in the
+           case that it actually didn't do anything.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--force-vermagic</option>
+        </term>
+        <listitem>
+          <para>
+           Every module contains a small string containing important
+           information, such as the kernel and compiler versions.  If
+           a module fails to load and the kernel complains that the
+           "version magic" doesn't match, you can use this option to
+           remove it.  Naturally, this check is there for your
+           protection, so this using option is dangerous unless
+           you know what you're doing.
+        </para>
+        <para>
+           This applies to any modules inserted: both the module (or
+           alias) on the command line and any modules on which it depends.
+        </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--force-modversion</option>
+        </term>
+        <listitem>
+          <para>
+           When modules are compiled with CONFIG_MODVERSIONS set, a
+           section detailing the versions of every interfaced used
+           by (or supplied by) the module is created.  If a
+           module fails to load and the kernel complains that the
+           module disagrees about a version of some interface, you
+           can use "--force-modversion" to remove the version
+           information altogether.  Naturally, this check is there
+           for your protection, so using this option is dangerous
+           unless you know what you're doing.
+        </para>
+        <para>
+           This applies any modules inserted: both the module (or
+           alias) on the command line and any modules on which it depends.
+        </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-f</option> <option>--force</option>
+        </term>
+        <listitem>
+          <para>
+           Try to strip any versioning information from the module
+           which might otherwise stop it from loading: this is the
+           same as using both <option>--force-vermagic</option> and
+           <option>--force-modversion</option>.  Naturally, these
+           checks are there for your protection, so using this option
+           is dangerous unless you know what you are doing.
+        </para>
+        <para>
+           This applies to any modules inserted: both the module (or
+           alias) on the command line and any modules it on which it depends.
+        </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-i</option> <option>--ignore-install</option> <option>--ignore-remove</option>
+        </term>
+        <listitem>
+          <para>This option causes <command>modprobe</command> to
+               ignore <command>install</command> and
+               <command>remove</command> commands in the
+               configuration file (if any) for the module specified on the
+               command line (any dependent modules are still subject
+               to commands set for them in the configuration file). Both
+               <command>install</command> and <command>remove</command>
+               commands will currently be ignored when this option is used
+               regardless of whether the request was more specifically
+               made with only one or other (and not both) of
+               <option>--ignore-install</option> or
+               <option>--ignore-remove</option>.
+               See <citerefentry>
+<refentrytitle>modprobe.conf</refentrytitle><manvolnum>5</manvolnum>
+</citerefentry>.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-l</option> <option>--list</option>
+        </term>
+        <listitem>
+          <para>List all modules matching the given wildcard (or "*"
+               if no wildcard is given).  This option is provided for
+               backwards compatibility and may go away in future: see
+           <citerefentry>
+             <refentrytitle>find</refentrytitle><manvolnum>1</manvolnum>
+           </citerefentry> and
+           <citerefentry>
+             <refentrytitle>basename</refentrytitle><manvolnum>1</manvolnum>
+           </citerefentry> for a more flexible alternative.
+        </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-n</option> <option>--dry-run</option>
+        <option>--show</option>
+        </term>
+        <listitem>
+          <para>This option does everything but actually insert or
+               delete the modules (or run the install or remove
+               commands).  Combined with <option>-v</option>, it is
+               useful for debugging problems. For historical reasons
+               both <option>--dry-run</option> and <option>--show</option>
+               actually mean the same thing and are interchangeable.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-q</option> <option>--quiet</option>
+        </term>
+        <listitem>
+          <para>
+           With this flag, <command>modprobe</command> won't print an error
+           message if you try to remove or insert a module it can't find (and
+           isn't an alias or
+           <command>install</command>/<command>remove</command> command).
+           However, it will still return with a non-zero exit status. The
+           kernel uses this to opportunistically probe for modules which might
+           exist using request_module.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-R</option> <option>--resolve-alias</option>
+        </term>
+        <listitem>
+          <para>
+           Print all module names matching an alias. This can be useful
+           for debugging module alias problems.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-r</option> <option>--remove</option>
+        </term>
+        <listitem>
+          <para>
+           This option causes <command>modprobe</command> to remove
+           rather than insert a module.  If the modules it depends on
+           are also unused, <command>modprobe</command> will try to
+           remove them too.  Unlike insertion, more than one module
+           can be specified on the command line (it does not make
+           sense to specify module parameters when removing modules).
+         </para>
+         <para>
+           There is usually no reason to remove modules, but some
+           buggy modules require it.  Your distribution kernel may not
+           have been built to support removal of modules at all.
+         </para>
+        </listitem>
+     </varlistentry>
+     <varlistentry>
+        <term><option>-S</option> <option>--set-version</option>
+        </term>
+        <listitem>
+          <para>
+           Set the kernel version, rather than using
+           <citerefentry><refentrytitle>uname</refentrytitle><manvolnum>2</manvolnum></citerefentry> to decide on the kernel version (which dictates where to
+           find the modules).
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>--show-depends</option>
+        </term>
+        <listitem>
+          <para>
+           List the dependencies of a module (or alias), including
+           the module itself.  This produces a (possibly empty) set
+           of module filenames, one per line, each starting with
+           "insmod" and is typically used by distributions to determine
+           which modules to include when generating initrd/initramfs images.
+           <command>Install</command> commands which apply are shown prefixed by
+           "install".  It does not run any of the install commands.  Note that
+           <citerefentry><refentrytitle>modinfo</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+           can be used to extract dependencies of a module from the
+           module itself, but knows nothing of aliases or install commands.
+         </para>
+        </listitem>
+     </varlistentry>
+     <varlistentry>
+        <term><option>-s</option> <option>--syslog</option>
+        </term>
+        <listitem>
+          <para>
+           This option causes any error messages to go through the
+           syslog mechanism (as LOG_DAEMON with level LOG_NOTICE)
+           rather than to standard error.  This is also automatically
+           enabled when stderr is unavailable.
+         </para>
+          <para>
+           This option is passed through <command>install</command>
+           or <command>remove</command> commands to other
+           <command>modprobe</command> commands in the
+           MODPROBE_OPTIONS environment variable.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-t</option> <option>--type</option>
+        </term>
+        <listitem>
+          <para>Restrict <option>-l</option> to modules
+               in directories matching the
+               <replaceable>dirname</replaceable> given.  This option
+               is provided for backwards compatibility and may go
+               away in future: see
+           <citerefentry>
+             <refentrytitle>find</refentrytitle><manvolnum>1</manvolnum>
+           </citerefentry>
+           and
+           <citerefentry>
+             <refentrytitle>basename</refentrytitle><manvolnum>1</manvolnum>
+           </citerefentry> for a more flexible alternative.
+        </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-V</option> <option>--version</option>
+        </term>
+        <listitem>
+          <para>Show version of program and exit.</para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-v</option> <option>--verbose</option>
+        </term>
+        <listitem>
+          <para>
+           Print messages about what the program is doing.  Usually
+           <command>modprobe</command> only prints messages if
+           something goes wrong.
+         </para>
+          <para>
+           This option is passed through <command>install</command>
+           or <command>remove</command> commands to other
+           <command>modprobe</command> commands in the
+           MODPROBE_OPTIONS environment variable.
+         </para>
+        </listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+  <refsect1>
+    <title>ENVIRONMENT</title>
+    <para>
+      The MODPROBE_OPTIONS environment variable can also be used to
+      pass arguments to <command>modprobe</command>.
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>COPYRIGHT</title>
+    <para>
+      This manual page originally Copyright 2002, Rusty Russell, IBM
+      Corporation. Maintained by Jon Masters and others.
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>SEE ALSO</title>
+    <para>
+      <citerefentry>
+       <refentrytitle>modprobe.conf</refentrytitle><manvolnum>5</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+       <refentrytitle>modprobe.d</refentrytitle><manvolnum>5</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+       <refentrytitle>insmod</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+       <refentrytitle>rmmod</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+       <refentrytitle>lsmod</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+       <refentrytitle>modinfo</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>
+    </para>
+  </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:2
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:nil
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+-->
diff --git a/doc/modules.dep.sgml b/doc/modules.dep.sgml
new file mode 100644 (file)
index 0000000..a0b68ed
--- /dev/null
@@ -0,0 +1,89 @@
+<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
+  <!ENTITY debian  "<productname>Debian GNU/Linux</productname>">
+  <!ENTITY docbook "<productname>DocBook</productname>">
+  <!ENTITY sgml    "<abbrev>SGML</abbrev>">
+]>
+
+<!-- Stolen from manual page for docbook-to-man, DocBook source file
+     (C) 1999 W. Borgert debacle@debian.org
+
+     $Id: docbook-to-man.sgml,v 1.8 2002/04/27 15:28:02 debacle Exp $ -->
+
+<refentry>
+  <refentryinfo>
+    <address>
+      <email>jcm@jonmasters.org</email>
+    </address>
+    <author>
+      <firstname>Jon</firstname>
+      <surname>Masters</surname>
+    </author>
+    <date>2010-03-01</date>
+  </refentryinfo>
+  <refmeta>
+    <refentrytitle>modules.dep</refentrytitle>
+    <manvolnum>5</manvolnum>
+  </refmeta>
+  <refnamediv>
+    <refname>modules.dep.bin</refname><refname>modules.dep</refname> <refpurpose>Module dependency information</refpurpose>
+  </refnamediv>
+  <refsect1>
+    <title>DESCRIPTION</title>
+
+    <para>
+      The <filename>modules.dep.bin</filename> as generated by
+      module-init-tools <command>depmod</command>, lists the
+      dependencies for every module in the directories under
+      <filename>/lib/modules/</filename><replaceable>version</replaceable>,
+      where <filename>modules.dep.bin</filename> (or the human readable
+      version <filename>modules.dep</filename>) is also located. It is
+      used by utilities such as <command>modprobe</command>. The
+      binary version will be used by default, if it was generated by
+      a compatible version of <command>depmod</command>, with fallback
+      to the generic <filename>modules.dep</filename>.
+    </para>
+    <para>
+      These files are not intended for editing or use by any additional
+      utilities as their format is subject to change in the future. You
+      should use the
+      <citerefentry><refentrytitle>modinfo</refentrytitle><manvolnum>8</manvolnum></citerefentry> command to obtain information about modules in a future
+      proof and compatible fashion rather than touching these files.
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>COPYRIGHT</title>
+    <para>
+      This manual page originally Copyright 2002, Rusty Russell, IBM
+      Corporation. Maintained by Jon Masters and others.
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>SEE ALSO</title>
+
+    <para>
+      <citerefentry>
+       <refentrytitle>depmod</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+       <refentrytitle>modprobe</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>
+    </para>
+  </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:2
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:nil
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+-->
diff --git a/doc/rmmod.sgml b/doc/rmmod.sgml
new file mode 100644 (file)
index 0000000..bd009b7
--- /dev/null
@@ -0,0 +1,159 @@
+<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
+  <!ENTITY debian  "<productname>Debian GNU/Linux</productname>">
+  <!ENTITY docbook "<productname>DocBook</productname>">
+  <!ENTITY sgml    "<abbrev>SGML</abbrev>">
+]>
+
+<!-- Stolen from manual page for docbook-to-man, DocBook source file
+     (C) 1999 W. Borgert debacle@debian.org
+
+     $Id: docbook-to-man.sgml,v 1.8 2002/04/27 15:28:02 debacle Exp $ -->
+
+<refentry>
+  <refentryinfo>
+    <address>
+      <email>jcm@jonmasters.org</email>
+    </address>
+    <author>
+      <firstname>Jon</firstname>
+      <surname>Masters</surname>
+    </author>
+    <date>2010-03-01</date>
+  </refentryinfo>
+  <refmeta>
+    <refentrytitle>rmmod</refentrytitle>
+    <manvolnum>8</manvolnum>
+  </refmeta>
+  <refnamediv>
+    <refname>rmmod</refname> <refpurpose>simple program to remove a module from the Linux Kernel</refpurpose>
+  </refnamediv>
+  <refsynopsisdiv>
+    <cmdsynopsis>
+      <command>rmmod</command>
+      <arg><option>-f</option></arg>
+      <arg><option>-w</option></arg>
+      <arg><option>-s</option></arg>
+      <arg><option>-v</option></arg>
+      <arg><replaceable>modulename</replaceable></arg>
+    </cmdsynopsis>
+  </refsynopsisdiv>
+  <refsect1>
+    <title>DESCRIPTION</title>
+
+    <para><command>rmmod</command> is a trivial program to remove a
+      module (when module unloading support is provided) from the kernel.
+      Most users will want to use
+      <citerefentry>
+       <refentrytitle>modprobe</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry> with the <option>-r</option> option instead.
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>OPTIONS</title>
+    <variablelist>
+      <varlistentry>
+        <term><option>-v</option> <option>--verbose</option>
+        </term>
+        <listitem>
+          <para>
+           Print messages about what the program is doing.
+           Usually <command>rmmod</command> prints messages
+           only if something goes wrong.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-f</option> <option>--force</option>
+        </term>
+        <listitem>
+          <para>
+           This option can be extremely dangerous: it has no effect unless
+           CONFIG_MODULE_FORCE_UNLOAD was set when the kernel was
+           compiled.  With this option, you can remove modules which are
+           being used, or which are not designed to be removed, or have
+           been marked as unsafe (see <citerefentry>
+       <refentrytitle>lsmod</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>).
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-w</option> <option>--wait</option>
+        </term>
+        <listitem>
+          <para>
+           Normally, <command>rmmod</command> will refuse to
+           unload modules which are in use.  With this option,
+           <command>rmmod</command> will isolate the module, and
+           wait until the module is no longer used.  Nothing new
+           will be able to use the module, but it's up to you to
+           make sure the current users eventually finish with it.
+           See <citerefentry>
+       <refentrytitle>lsmod</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>) for information on usage counts.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-s</option> <option>--syslog</option>
+        </term>
+        <listitem>
+          <para>
+           Send errors to syslog instead of standard error.
+         </para>
+        </listitem>
+      </varlistentry>
+      <varlistentry>
+        <term><option>-V</option> <option>--version</option>
+        </term>
+        <listitem>
+          <para>
+           Show version of program and exit.
+         </para>
+        </listitem>
+      </varlistentry>
+    </variablelist>
+  </refsect1>
+  <refsect1>
+    <title>COPYRIGHT</title>
+    <para>
+      This manual page originally Copyright 2002, Rusty Russell, IBM
+      Corporation. Maintained by Jon Masters and others.
+    </para>
+  </refsect1>
+  <refsect1>
+    <title>SEE ALSO</title>
+
+    <para>
+      <citerefentry>
+       <refentrytitle>modprobe</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+       <refentrytitle>insmod</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>,
+      <citerefentry>
+       <refentrytitle>lsmod</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>
+      <citerefentry>
+       <refentrytitle>modinfo</refentrytitle><manvolnum>8</manvolnum>
+      </citerefentry>
+    </para>
+  </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:2
+sgml-indent-data:t
+sgml-parent-document:nil
+sgml-default-dtd-file:nil
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+-->