descriptionmodule-init-tools
ownermichal@markovi.net
last changeTue, 25 May 2010 18:53:50 +0000 (25 14:53 -0400)
content tags
add:
README
module-init-tools - Linux userspace module loading utilities
------------------------------------------------------------

Handy Resources:
	- Bugs: Please send email to list
	- Git:  git://git.kernel.org/pub/scm/utils/kernel/module-init-tools/module-init-tools.git
	- IRC:  irc.freenode.org/#module-init-tools
	- Mail: linux-modules@vger.kernel.org
	- Web:  http://modules.wiki.kernel.org/

The module-init-tools are used by modern 2.6 series Linux systems to provide
userspace-side assistance in loading kernel modules and their dependencies.
Originally written to replace the older "modutils", the utilities include
the "modprobe" (load modules and their dependencies), "insmod" (load just
a single module), "modinfo" (retrieve module information), and other related
module management commands. These are intended to be relatively lightweight
in their design, since 2.6 series kernels do much of the work internally.

You will find documentation within the man pages and in this README file,
as well as some hints on development within the HACKING file. You are
encouraged to get involved by signing up to the linux-modules@vger.kernel.org
project mailing list, and posting patches (git pull requests are welcome).
You can also find further information, including the address of the mailing
list, this git repository, and so forth on the module-init-tools wiki.

Development takes place against the latest upstream Linux kernels (2.6.33
as of this writing, though kernel development moves quickly). Backward
compatibility is generally attempted, but forward compatibility (i.e. the
ability for a specific release of module-init-tools to work against data
files created by a later version as yet unreleased version) is not. In
particular, the generated data files within /lib/modules/<kernel version>
must not be assumed to have any particular format, nor should they be
parsed be any other tools. There is a specific "modinfo" utility intended
for the purposes of providing the information stored within those files.

Recent Changes:
	- There is no backwards compatibility for pre-2.6 series kernels. If
	  you intend to use an older kernel (wherein the module utilities
	  must perform various linking stages in userspace), use an older
	  tool such as provided in the "modutils" legacy kernel package.

	- Explicit locking of kernel modules is no longer being performed at
	  load time (the existing implementation required a writeable mount
	  in /lib/modules that is by no means assured - an alternative of
	  using SYSV locks was experimented with but deemed unnecessary).
	  The kernel will handle one modprobe instance racing with another
	  by denying the load and returning an error message.

Work in progress:
	- We are working on soft-dependency support that will allow modules
	  to provide hints as to dependencies that may not be explicit.

Requirements:
	- A 2.6 series Linux kernel with sysfs, procfs, and loadable module
	  support enabled in the kernel configuration. It is also required
	  that sysfs and procfs be mounted in their usual /proc and /sys
	  locations in order for certain functionality to be provided.

	- Module remove support must be enabled if removing is required. Yo
	  can also enable other options such as forced removal, but this is
	  really a bad idea for anything other than development.

	- Module versioning (MODVERSIONS) must be enabled if you would
	  like to try to use modules from one kernel with another, similar
	  one without the kernel complaining loudly at the difference.

Quickstart:
	- Make sure you have appropriate development tools (gcc, GNU autotools,
	  docbook2man, etc. Some distributions may require optional packages
	  for a static version of glibc, as an example).

	- To begin hacking on module-init-tools, you can do the following:

	1). aclocal -I m4 && automake --add-missing --copy && autoconf
	    (or run "autoreconf" from an existing setup)
	2). ./configure
	    (optionally specify "--prefix" or "--mandir" for non /usr/local)
	3). make
	4). make install
	5). depmod
	    (to update /lib/modules/<kernel version> for the latest release)

Please direct any comment/question to the linux-modules mailing list at:
	linux-modules@vger.kernel.org
shortlog
2010-05-25 Kay Sieversdepmod: export static device node information to module... master
2010-05-25 Jon Mastersdepmod: add some comments to the code
2010-05-25 Jon MastersBUGS: Update the bugs file
2010-05-25 Jon MastersBUGS: Tracking bugs being worked on from bugzilla
2010-05-04 Jon Masterspre-release: module-init-tools v3.12-pre3
2010-05-04 Alan Jenkinsbuild: handle old (System V) style wc output
2010-03-17 Alan Jenkinsmodprobe: try to remove unused modules first
2010-03-17 Alan Jenkinsmodprobe: pull underscores() out of do_modprobe()
2010-03-17 Alan Jenkinsmodprobe: --dump-modversions takes one filename only
2010-03-17 Alan Jenkinsmodprobe: remove some redundant softdep code
2010-03-17 Alan Jenkinsmodprobe: remove support for renaming modules
2010-03-17 Alan Jenkinsmodprobe: fix softdep flags
2010-03-17 Alan Jenkinsmodprobe: fix dump_config
2010-03-17 Alan Jenkinsdoc: fix sgml errors
2010-03-16 Alan Jenkinsdoc: fix typo
2010-03-10 Jon Mastersbuild: remove explicit call to build modules.dep.bin
...
heads
14 years ago bnc624386
14 years ago suse-factory
14 years ago suse-scripts
14 years ago master
14 years ago suse-sle11-sp1
15 years ago for-jon