This version of the module utilities is called "modules-2.1.13"

This module package will work with almost anything (any kernel and may
compiled on almost any kernel (with any kernel source tree). Module
handling have changed since linux 2.1.8 to support the new
kernel exception handling (should I say incredible new exception handling).

Further, different things have moved and linux 2.1.13 looks ok. So to use
module, either use kernel 2.0.x or 2.1.13 and above.

This module package support both the old module loading/initialisation
strategy (before 2.1.8) and the new one. The is nothing changed in the
module themselves, nor in the way you use those module utilities.

So they are dropin replacement.

There is now support to load strings into as module argument, not only
number. This is experimental. A new enhance module definition mecanism
will allow one module author to fully specify what is configurable
in its module (at load time). Both type and usage. Not done yet.

Note: optional support for persistent module storage is available!
  You enable the persistent storage by applying the kernel patch that
  you will find in the kerneld directory, and by editing insmod/Makefile
  as well as kerneld/Makefile according to the (simple) instructions.

  If you are using the persistent storage, you really _need_ libgdbm!
  If you have /usr as a separate filesystem, it might be a good idea to
  move the libgdbm shared library to /lib and do "ldconfig" once more...
  (Remember to do "ln -s libgdbm.so.x.y libgdbm.so" !!!)


Do 'make install' in this directory to get the following tools:

insmod:
	insmod		install a loadable module
	rmmod		remove module(s)
	ksyms		show symbols
	lsmod		show modules

	Note 1: insmod, rmmod and ksyms are rolled into one binary.
	Note 2: insmod can handle both a.out and ELF modules (and kernels).
	Note 3: insmod knows about symbol versions (generated by genksyms),
		but can also handle unversioned kernels and/or modules.
	Note 4: M68K support included
	Note 5: BFD support for modprobe included
	Note 6: insmod knows about persistent module data

genksyms:
	genksyms	version generator for module symbols,
			to be run automatically during kernel make
			if CONFIG_MODVERSIONS was selected in "make config"

depmod:
	modprobe	load (a stack of) modules, controlled by a "makefile"
			and a configuration file.
	depmod		generate dependencies for modprobe.

	Note 1: modprobe and depmod are rolled into one binary
	Note 2: Take a look at the example for "/etc/conf.modules"!
			(or, as it also could be called: "etc/modules.conf")
	Note 3: modprobe understands "install" and "remove" in conf.modules

kerneld: (See "kerneld/README" for more information)
	kerneld		A "user level kernel extension" that allows
			the kernel to perform some tasks in user space.
			Suitable tasks are e.g. loading of modules.
	Note 1: there is a patch in the kerneld directory that enables
	        an extension to the kerneld protocol.  The extension
	        makes the pid of the triggering process available in
	        the environment of all kerneld programs (KERNELD_TRIGGER).

	Note 2: there is now support for persistent module storage.
	        Look in the kerneld directory.

	Note 3: PLEASE apply the patch in "kerneld/README.cleanremove"
	        This will make your modules stay at least 60 seconds
		after they were last used.


The file "rc.hints" contains a skeleton for the system startup script.

Bjorn Ekwall and Jacques Gelinas in June 1996


Mail questions/problems to:
	<bj0rn@blox.se>  URL:<http://www.pi.se/blox/>
	<jack@solucorp.qc.ca>
