Blame NEWS

Packit a3a425
kmod 25
Packit a3a425
=======
Packit a3a425
Packit a3a425
- Improvements
Packit a3a425
	- Add module signature to modinfo output
Packit a3a425
Packit a3a425
	- Add support for external directories in depmod: now there's a new
Packit a3a425
	  "external" keyword parsed by depmod when calculating the dependencies.
Packit a3a425
	  It allows to add modules to other directories which are not relative
Packit a3a425
	  to where the modules are commonly installed.  This results in
Packit a3a425
	  modules.dep and friends now understanding absolute paths rather than
Packit a3a425
	  relative paths only. For more information see depmod.d(1).
Packit a3a425
Packit a3a425
	- Add support for CONFIG_MODULE_REL_CRCS
Packit a3a425
Packit a3a425
	- Add missing documentation references in man pages
Packit a3a425
Packit a3a425
	- Handle the case in which module has a .TOC symbol already while
Packit a3a425
	  calculating dependencies
Packit a3a425
Packit a3a425
	- Improve testsuite and allow to use mkosi to run testsuite in different
Packit a3a425
	  distros
Packit a3a425
Packit a3a425
kmod 24
Packit a3a425
=======
Packit a3a425
Packit a3a425
- Improvements:
Packit a3a425
	- Add more information on dependency loop
Packit a3a425
Packit a3a425
	- Sanitize use of strcpy and allow to grow from small strings on stack
Packit a3a425
	  (common case) to bigger strings on heap when needed
Packit a3a425
Packit a3a425
- Bug fixes
Packit a3a425
	- Fix wrong dependency loops being reported by depmod
Packit a3a425
Packit a3a425
	- Fix crashes when reporting dependency loops
Packit a3a425
Packit a3a425
	- Fix parsing kernel command line containing quotes
Packit a3a425
Packit a3a425
	- Fix leaks on error paths
Packit a3a425
Packit a3a425
kmod 23
Packit a3a425
=======
Packit a3a425
Packit a3a425
- Improvements:
Packit a3a425
	- Don't add comment to modules.devname if it would otherwise be empty
Packit a3a425
	  to play nice with tools detecting empty files
Packit a3a425
Packit a3a425
	- Allow building with BSD sed, that doesn't have -E flag
Packit a3a425
Packit a3a425
	- Ignore .TOC. symbols in depmod parsing as it's for PPC64 the
Packit a3a425
	  equivalent of _GLOBAL_OFFSET_TABLE_
Packit a3a425
Packit a3a425
	- Teach modinfo about PKCS#7 module signatures: it doesn't add any
Packit a3a425
	  other info besides telling the user the module is signed since
Packit a3a425
	  kernel doesn't add other info on the module section
Packit a3a425
Packit a3a425
- Bug fixes
Packit a3a425
Packit a3a425
	- Fix -s and -p compat options to insmod triggering force flag
Packit a3a425
Packit a3a425
	- Fix long lines from /proc/modules not being handled correctly by
Packit a3a425
	  kmod_module_new_from_loaded() and kmod_module_get_size() and several
Packit a3a425
	  other library functions that use them
Packit a3a425
Packit a3a425
	- Fix crash on modinfo while checking for available signature of
Packit a3a425
	  unknown type
Packit a3a425
Packit a3a425
	- Fix documentation generation with gtk-doc
Packit a3a425
Packit a3a425
kmod 22
Packit a3a425
=======
Packit a3a425
Packit a3a425
- Tools:
Packit a3a425
	- Change defaul log level for tools to WARNING rather than ERROR and update
Packit a3a425
	  some log levels for current messages
Packit a3a425
Packit a3a425
	- depmod doesn't fallback to uname if a bad version is passed in the command
Packit a3a425
	  line anymore. We just exit with an error.
Packit a3a425
Packit a3a425
	- insmod was taught the -f flag, just like in modprobe. It was previously
Packit a3a425
	  silently ignoring it.
Packit a3a425
Packit a3a425
- libkmod
Packit a3a425
	- New kmod_get_dirname() API to get the module directory set in the
Packit a3a425
	  context
Packit a3a425
Packit a3a425
- Bug fixes:
Packit a3a425
	- Fix return code in error path of kmod_module_insert_module(). We were
Packit a3a425
	  previously returning ENOSYS rather than ENOENT.
Packit a3a425
Packit a3a425
kmod 21
Packit a3a425
=======
Packit a3a425
Packit a3a425
- New features:
Packit a3a425
	- kmod tool started to learn the "insert" and "remove" commands that
Packit a3a425
	  are the simplified versions of the older modprobe tool.  These
Packit a3a425
	  commands are still work in progress so they are hidden behind a
Packit a3a425
	  --enable-experimental flag during build.  It should not be enabled
Packit a3a425
	  unless you know what you're doing.
Packit a3a425
	- kmod tool now prints the relevant configuration options it was built
Packit a3a425
	  with when the "--version" argument is passed. This helps to mitigate
Packit a3a425
	  problems for example when the user is trying to load a compressed
Packit a3a425
	  module but kmod was built without support for the compression method.
Packit a3a425
Packit a3a425
- Improvements to testsuite:
Packit a3a425
	- Cache built modules so it is easier to run "make check" on build
Packit a3a425
	  servers by distro maintainers. If kmod is configured with
Packit a3a425
	  --disable-test-modules the modules from cache will be used by
Packit a3a425
	  "make check". No changes to the tests are needed and all of them
Packit a3a425
	  can run fine.
Packit a3a425
Packit a3a425
kmod 20
Packit a3a425
=======
Packit a3a425
- Bug fixes:
Packit a3a425
	- Handle bogus values from ELF, making sure they don't overflow while
Packit a3a425
	  parsing the file
Packit a3a425
	- Fix leak in depmod when -b flag is passed multiple times
Packit a3a425
	- Multiple minor fixes from static analysis by coverity and
Packit a3a425
	  clang-analyze
Packit a3a425
	- Fix race between loading modules and checking if it's loaded in the
Packit a3a425
	  kernel
Packit a3a425
Packit a3a425
- New features:
Packit a3a425
	- There's a change in behavior regarding builtin modules: we now only
Packit a3a425
	  consider as builtin those that are present in modules.builtin index.
Packit a3a425
	  Previously we were also checking the presence of
Packit a3a425
	  /sys/module/<module-name>, but this is racy and only modules that
Packit a3a425
	  contain parameters are the ones creating a directory in sysfs.
Packit a3a425
Packit a3a425
	  Now some commands will start to fail, e.g. "modprobe vt". Since vt
Packit a3a425
	  can't be compiled as a module it's not present in modules.builtin
Packit a3a425
	  index. Previously we would report at as builtin, but now we fail
Packit a3a425
	  because we couldn't find the module.
Packit a3a425
Packit a3a425
- Improvements:
Packit a3a425
	- Integration of gcov into the build. Currently libkmod is at ~70%
Packit a3a425
	  covered and tools at ~50% by tests in the testsuite. Utility
Packit a3a425
	  functions and structures in shared have more than 90% of coverage.
Packit a3a425
	- Upload build to coverity
Packit a3a425
Packit a3a425
- Improvements to testsuite:
Packit a3a425
	- Fix parsing return codes of init_module() calls
Packit a3a425
	- Add tests for utility functions in shared/
Packit a3a425
	- Add tests for kmod_module_remove_module()
Packit a3a425
	- Add playground, in which our own modules are compiled
Packit a3a425
	- Port all tests to use modules from module-playground instead of
Packit a3a425
	  copying prebuilt modules to the repository
Packit a3a425
	- Properly handle binaries that exit with no output
Packit a3a425
	- Besides comparing the output of commands, allow to copy to
Packit a3a425
	  stdout/stderr
Packit a3a425
Packit a3a425
kmod 19
Packit a3a425
=======
Packit a3a425
Packit a3a425
- Bug fixes:
Packit a3a425
	- Fix missing CLOEXEC in library
Packit a3a425
	- Fix error message while opening kmod's index
Packit a3a425
Packit a3a425
- New features:
Packit a3a425
	- Add kmod(8) man page
Packit a3a425
	- Allow to build with libc's without be32toh()
Packit a3a425
	- Move code around separating common code and data structures into a
Packit a3a425
	  shared directory. This allows to share more code between library and
Packit a3a425
	  tools, making the binary size of tools smaller.
Packit a3a425
	- Clarify tools vs library licenses
Packit a3a425
	- static-nodes: when writing in tmpfiles format, indicate that
Packit a3a425
	  creation of static nodes should only happen at boot. This is used and
Packit a3a425
	  required by systemd-217+.
Packit a3a425
Packit a3a425
- Improvements to testsuite:
Packit a3a425
	- Add tests for newly created shared/ code
Packit a3a425
	- Improve how tests are declared so there's less boilerplate code for
Packit a3a425
	  each test.
Packit a3a425
Packit a3a425
kmod 18
Packit a3a425
=======
Packit a3a425
Packit a3a425
- Bug fixes:
Packit a3a425
	- Fix leaks in error paths
Packit a3a425
	- Fix use-after-free in hash implementation causing a wrong index to be
Packit a3a425
	  generated by depmod with out-of-tree modules
Packit a3a425
Packit a3a425
- New features:
Packit a3a425
	- Calling depmod with modules creating a dependency loop will now make
Packit a3a425
	  depmod return an error and not update the indexes. This is to protect
Packit a3a425
	  the current index not being overridden by another index that may cause
Packit a3a425
	  a boot failure, depending on the buggy module. It's a necessary
Packit a3a425
	  change in behavior regarding previous kmod releases and
Packit a3a425
	  module-init-tools. The error message was also improved to output
Packit a3a425
	  the modules that caused the dependency cycle.
Packit a3a425
Packit a3a425
- Improvements to testsuite:
Packit a3a425
	- Fix and improve expected-fail test
Packit a3a425
	- Add tests for hashmap implementation
Packit a3a425
Packit a3a425
kmod 17
Packit a3a425
=======
Packit a3a425
Packit a3a425
- Bug fixes:
Packit a3a425
	- Fix matching a "." in kernel cmdline, making garbage in the command
Packit a3a425
	  line be parsed as kmod options
Packit a3a425
	- Fix man pages to clarify we don't fallback to parsing modules.dep
Packit a3a425
	  but instead we depend on modules.dep.bin (generated by depmod) to
Packit a3a425
	  be present
Packit a3a425
	- Fix ELF parsing on 32 bit systems assigning the wrong class.
Packit a3a425
	- Fix partial matches of search directives in depmod. Previously having
Packit a3a425
	  a line in depmod.conf such as "search foo foobar built-in" would cause
Packit a3a425
	  unpretictable results because foo is a partial match of foobar as well.
Packit a3a425
	- Fix unaligned access in modinfo when getting the signature from a
Packit a3a425
	  module
Packit a3a425
	- Make sure softdeps are treated as optional dependencies
Packit a3a425
Packit a3a425
- New features:
Packit a3a425
	- Accept special files given to "-C" switch in modprobe. This way it's
Packit a3a425
	  possible to skip system configuration with "modprobe -C /dev/null"
Packit a3a425
	- Do not require xsltproc on released tarballs
Packit a3a425
	- Don't use Werror anymore
Packit a3a425
	- Add experimental python bindings, merged from python-kmod repository
Packit a3a425
	  (https://github.com/agrover/python-kmod)
Packit a3a425
	- Parse softdeps exported by the kernel as
Packit a3a425
	  /lib/modules/`uname -r`/modules.softdep
Packit a3a425
Packit a3a425
- Improvements to testsuite:
Packit a3a425
	- Check the list of loaded modules after a test
Packit a3a425
Packit a3a425
kmod 16
Packit a3a425
=======
Packit a3a425
Packit a3a425
- Bug fixes:
Packit a3a425
	- Fix usage of readdir_r()
Packit a3a425
	- Add some missing checks for memory allocation errors
Packit a3a425
Packit a3a425
- New features:
Packit a3a425
	- Remove option from libkmod to allow waiting on module removal if
Packit a3a425
	  the module is being used. It's dangerous since it can block the
Packit a3a425
	  caller indefinitely.
Packit a3a425
	- Improve compatibility with musl libc
Packit a3a425
	- Add fallback implementation for compilers without _Static_assert(),
Packit a3a425
	  e.g. gcc < 4.6
Packit a3a425
	- Minor optimizations to the hash table
Packit a3a425
	- Make depmod warn if a module has incorrect devname specification
Packit a3a425
	- Use cleanup attribute
Packit a3a425
Packit a3a425
kmod 15
Packit a3a425
=======
Packit a3a425
Packit a3a425
- Bug fixes:
Packit a3a425
	- kmod static-nodes doesn't fail if modules.devname isn't available
Packit a3a425
	- Fix getting boolean parameter from kernel cmdline in case the value
Packit a3a425
	  is omitted
Packit a3a425
	- Fix some mkdir_p() corner cases (used in testsuite and static-nodes)
Packit a3a425
Packit a3a425
- New features:
Packit a3a425
	- kmod static-nodes creates parent directories if given a -o option
Packit a3a425
	- kmod binary statically links to libkmod - if distro is only interested
Packit a3a425
	  in the kmod tool (for example in an initrd) it can refrain from
Packit a3a425
	  installing the library
Packit a3a425
	- Add shell completion for kmod tool
Packit a3a425
Packit a3a425
kmod 14
Packit a3a425
=======
Packit a3a425
Packit a3a425
- Bug fixes:
Packit a3a425
	- Fix some format strings
Packit a3a425
	- Protect against NULL being passed around to index
Packit a3a425
	- Avoid calling syscall() with -1 when finit_module() is not available,
Packit a3a425
	  since this doesn't always work
Packit a3a425
	- Fix not being able to remove alias due to checking the module's
Packit a3a425
	  refcount
Packit a3a425
	- Minor fixes and refactors
Packit a3a425
Packit a3a425
- New features:
Packit a3a425
	- Improve libkmod documentation, particularly on how flags are dealt
Packit a3a425
	  with.
Packit a3a425
	- Remove ability to build a static libkmod
Packit a3a425
	- Add static-nodes command to kmod that parses modules.devname
Packit a3a425
	  generating output in useful formats
Packit a3a425
Packit a3a425
kmod 13
Packit a3a425
=======
Packit a3a425
Packit a3a425
- Bug fixes:
Packit a3a425
	- Add the long option --symbol-prefix option to depmod (it was absent)
Packit a3a425
	  and fix its behavior
Packit a3a425
	- Don't abort if there's a bogus line in configuration file like "alias
Packit a3a425
	  psmouse off". Some distros are carrying this since the days of
Packit a3a425
	  modutils
Packit a3a425
Packit a3a425
- New features:
Packit a3a425
	- Add support for finit_module(2). If the module is load straight from
Packit a3a425
	  the disk and without compression we use finit_module() syscall when
Packit a3a425
	  available, falling back to init_module() otherwise
Packit a3a425
	- kmod_module_get_info() also returns the signature if the module is
Packit a3a425
	  signed and modinfo uses it
Packit a3a425
	- Use secure_getenv if available
Packit a3a425
	- rmmod understands builtin modules, just like modprobe does
Packit a3a425
	- Improve compatibility with musl-libc
Packit a3a425
	- Test cases exit with success when receiving a signal if they are
Packit a3a425
	  xfail tests
Packit a3a425
Packit a3a425
kmod 12
Packit a3a425
=======
Packit a3a425
Packit a3a425
- Bug fixes:
Packit a3a425
	- Fix removing vermagic from module when told to force load a module
Packit a3a425
	- Fix removing __versions section when told to force load a module: we
Packit a3a425
	  need to mangle the section header, not the section.
Packit a3a425
	- modinfo no longer fails while loading a module from file when path
Packit a3a425
	  contains ".ko" substring
Packit a3a425
Packit a3a425
kmod 11
Packit a3a425
=======
Packit a3a425
Packit a3a425
- Improvements to testsuite:
Packit a3a425
	- Fix testsuite defining symbols twice on 32 bit systems
Packit a3a425
	- Allow to check generated files against correct ones
Packit a3a425
Packit a3a425
- New features:
Packit a3a425
	- libkmod now keeps a file opened after the first call to
Packit a3a425
	  kmod_module_get_{info,versions,symbols,dependency_symbols}. This
Packit a3a425
	  reduces signficantly the amount of time depmod tool takes to
Packit a3a425
	  execute. Particularly if compressed modules are used.
Packit a3a425
	- Remove --with-rootprefix from build system. It was not a great idea
Packit a3a425
	  after all and should not be use since it causes more harm then
Packit a3a425
	  benefits.
Packit a3a425
	- Hide --wait option on rmmod. This feature is being targeted for
Packit a3a425
	  removal from kernel. rmmod still accepts this option, but it's hidden
Packit a3a425
	  now: man page and usage() say nothing about it and if it's used,
Packit a3a425
	  user will get a 10s sleep. This way we can check and help if anyone
Packit a3a425
	  is using this feature.
Packit a3a425
	- Refactor message logging on all tools, giving proper prefix, routing
Packit a3a425
	  everything to syslog when asked for, etc.
Packit a3a425
Packit a3a425
- Bug fixes:
Packit a3a425
	- Fix parsing of modules.order when using compressed modules
Packit a3a425
	- Usage messages go to stdout instead of stderr
Packit a3a425
	- Fix memory leak in hash implementation
Packit a3a425
Packit a3a425
kmod 10
Packit a3a425
=======
Packit a3a425
Packit a3a425
- New features:
Packit a3a425
	- Read coresize from /sys if supported
Packit a3a425
Packit a3a425
	- Add flag to kmod_module_probe_insert() to apply blacklisting during
Packit a3a425
	  probe only if mod is an alias. Now modprobe uses this flag by default.
Packit a3a425
	  This is needed to fix a change in behavior regarding module-init-tools
Packit a3a425
	  and ultimately makes us loading a blacklisted module.
Packit a3a425
Packit a3a425
- Better formatting in man pages
Packit a3a425
Packit a3a425
- Add option to disable building man pages at build time
Packit a3a425
Packit a3a425
- Fixes in the testsuite and refactoring of LDPRELOAD'ed libraries
Packit a3a425
Packit a3a425
- Re-licensing testsuite as LGPL
Packit a3a425
Packit a3a425
kmod 9
Packit a3a425
======
Packit a3a425
Packit a3a425
- Improvements to the testsuite:
Packit a3a425
	- Check for correct handling of softdep loops
Packit a3a425
	- Check for correct handling of install command loops
Packit a3a425
Packit a3a425
- Bug fixes:
Packit a3a425
	- Fix build with compilers that don't support --gc-sections
Packit a3a425
	- Handle errors when dealing with gzipped modules
Packit a3a425
	- depmod now handles errors while writing indices, so it doesn't end up
Packit a3a425
	  with a corrupted index without telling the user
Packit a3a425
Packit a3a425
kmod 8
Packit a3a425
======
Packit a3a425
Packit a3a425
- No new features, small bug fixes only.
Packit a3a425
	- Fix a bug in "modprobe -c" output: be compatible with
Packit a3a425
	  module-init-tools
Packit a3a425
Packit a3a425
	- Give a useful error message when init_module fails due to bad
Packit a3a425
	  parameter or unknown symbols
Packit a3a425
Packit a3a425
	- Fix doc generation
Packit a3a425
Packit a3a425
kmod 7
Packit a3a425
======
Packit a3a425
Packit a3a425
- Re-order dirs for configuration files to match the change in systemd and
Packit a3a425
  udev: now the priority is:
Packit a3a425
	1. /etc/modprobe.d
Packit a3a425
	2. /run/modprobe.d
Packit a3a425
	3. /lib/modprobe.d
Packit a3a425
Packit a3a425
- Fix setting CFLAGS/LDFLAGS in build system. This prevented us from not
Packit a3a425
  allowing the user to set his preferences.
Packit a3a425
Packit a3a425
- Bug fixes:
Packit a3a425
	- Return same error codes of module-init-tools when removing modules
Packit a3a425
	  with modprobe
Packit a3a425
	- Fix builtin output in "--show-depends" when target kernel is not the
Packit a3a425
	  same of the running kernel
Packit a3a425
	- 'modprobe -r' always look at all command line arguments
Packit a3a425
	- Fix '-q' usage in modprobe
Packit a3a425
Packit a3a425
kmod 6
Packit a3a425
======
Packit a3a425
Packit a3a425
- New API in libkmod:
Packit a3a425
	- kmod_module_apply_filter(): a generic function to apply filters in a
Packit a3a425
	  list of modules. This deprecates the use of
Packit a3a425
	  kmod_module_get_filtered_blacklist()
Packit a3a425
Packit a3a425
- More tests in testsuite
Packit a3a425
Packit a3a425
- Add compatibility with uClibc again
Packit a3a425
Packit a3a425
- Lookup modules.builtin.bin to decide if a module is built in kernel
Packit a3a425
Packit a3a425
- Downgrade some log messages so we don't annoy people with useless messages
Packit a3a425
Packit a3a425
- Bug fixes:
Packit a3a425
	- Flag --ignore-loaded was not being properly handled
Packit a3a425
	- Infinite loop with softdeps
Packit a3a425
	- Infinite loop with dumb user configuration with install commands
Packit a3a425
	- Fix leak in index when there's a partial match
Packit a3a425
Packit a3a425
- Move repository and tarballs to kernel.org
Packit a3a425
Packit a3a425
kmod 5
Packit a3a425
======
Packit a3a425
Packit a3a425
- Break libkmod's API to insert a module like modprobe does. It now accepts
Packit a3a425
  extra an extra argument to print its action and acceptable flags were
Packit a3a425
  sanitized.
Packit a3a425
Packit a3a425
- Share more code between modprobe and libkmod: using the new version of
Packit a3a425
  kmod_module_probe_insert_module() it's possible to share a great amount of
Packit a3a425
  code between modprobe and libkmod
Packit a3a425
Packit a3a425
- modprobe no longer works with paths: it only accepts module names and/or
Packit a3a425
  aliases now.
Packit a3a425
Packit a3a425
- testsuite was added to repository, allowing automated tests to be run and
Packit a3a425
  easing the way bugs are reproduced.
Packit a3a425
Packit a3a425
- modprobe: when dumping configuration ('-c' option) separate config
Packit a3a425
  and indexes by adding a commented line between them.
Packit a3a425
Packit a3a425
- Fix bugs wrt normalizing aliases and module names
Packit a3a425
Packit a3a425
- Fix bug wrt inserting an alias that resolves to multiple modules: we should
Packit a3a425
  not stop on the first error, but rather continue to try loading other
Packit a3a425
  modules.
Packit a3a425
Packit a3a425
- Fix unaligned memory access in hash function, causing depmod to output wrong
Packit a3a425
  information in ARMv5
Packit a3a425
Packit a3a425
- Fix man page build and install: now they are only installed if tools are
Packit a3a425
  enabled
Packit a3a425
Packit a3a425
kmod 4
Packit a3a425
======
Packit a3a425
Packit a3a425
- New APIs in libkmod to:
Packit a3a425
	- Get configuration lists: blacklists, install commands, remove
Packit a3a425
	  commands, aliases, options and softdeps
Packit a3a425
	- Dump indexes
Packit a3a425
Packit a3a425
- Several bugs fixed in libkmod, modprobe, depmod and modinfo
Packit a3a425
Packit a3a425
- API documentation: if configure with run with --enable-gtk-doc, the API doc
Packit a3a425
  will be generated by make. Gtk-doc is required for that.
Packit a3a425
Packit a3a425
- Man pages are built, which replace man pages from module-init-tools
Packit a3a425
Packit a3a425
- 'include' and 'config' options in *.conf files were deprecated
Packit a3a425
Packit a3a425
- configure is not run by autogen.sh. Instead, a common set of options is
Packit a3a425
  printed. If you are hacking on kmod, consider using bootstrap-configure
Packit a3a425
  script.
Packit a3a425
Packit a3a425
- 'modprobe -c' works as expected now. As opposed to module-init-tools, it
Packit a3a425
  dumps the parsed configuration, not only the file contents.
Packit a3a425
Packit a3a425
kmod 3
Packit a3a425
======
Packit a3a425
Packit a3a425
- New APIs in libkmod to:
Packit a3a425
	- Get symbols from module, parsing the ELF section
Packit a3a425
	- Get dependency symbols
Packit a3a425
	- Check if resources are still valid or if libkmod must be reloaded
Packit a3a425
	- Insert module like modprobe, checking (soft-)dependencies, commands,
Packit a3a425
	  blacklist. It can run commands by itself and to call a callback
Packit a3a425
	  function.
Packit a3a425
Packit a3a425
- Support to load modules compressed with xz
Packit a3a425
Packit a3a425
- Tools are now bundled together in a single tool called kmod. It can be
Packit a3a425
  called using symlinks with the same names as tools from module-init-tools.
Packit a3a425
  E.g: /usr/bin/lsmod -> /usr/bin/kmod. With this we are aiming to complete a
Packit a3a425
  1:1 replacement of module-init-tools.
Packit a3a425
Packit a3a425
- The only missing tool, depmod, was added to kmod together with the necessary
Packit a3a425
  APIs in libkmod.
Packit a3a425
Packit a3a425
- If a program using libkmod runs for a long time, as for example udev, it must
Packit a3a425
  check if it doesn't have to re-load libkmod. A new helper function was added
Packit a3a425
  in libkmod to check if context is still valid and udev is already using it.
Packit a3a425
Packit a3a425
- An 'unaligned access' bug was fixed. So those architecture that does not
Packit a3a425
  handle unaligned access can use kmod, too.
Packit a3a425
Packit a3a425
kmod 2
Packit a3a425
======
Packit a3a425
Packit a3a425
Some bugs fixed: the worst of them was with an infinite loop when an alias
Packit a3a425
matched more than one module.
Packit a3a425
Packit a3a425
- New APIs in libkmod to:
Packit a3a425
	- Get soft dependencies
Packit a3a425
	- Get info from module files parsing ELF
Packit a3a425
	- Get modversions from files parsing ELF
Packit a3a425
Packit a3a425
- Support to load gzipped kernel modules: kmod can be compiled with support to
Packit a3a425
  gzipped modules by giving the --enable-zlib flag
Packit a3a425
Packit a3a425
- Support to forcefully load modules, both vermagic and modversion
Packit a3a425
Packit a3a425
- Support to force and nowait removal flags
Packit a3a425
Packit a3a425
- Configuration files are parsed in the same order as modprobe: files are
Packit a3a425
  sorted alphabetically (independently of their dir) and files with the same
Packit a3a425
  name obey a precedence order
Packit a3a425
Packit a3a425
- New tool: kmod-modinfo
Packit a3a425
Packit a3a425
- kmod-modprobe gained several features to be a 1:1 replacement for modprobe.
Packit a3a425
  The only missing things are the options '--showconfig' and '-t / -l'. These
Packit a3a425
  last ones have been deprecated long ago and they will be removed from
Packit a3a425
  modprobe. A lot of effort has been put on kmod-modprobe to ensure it
Packit a3a425
  maintains compabitility with modprobe.
Packit a3a425
Packit a3a425
- linux-modules@vger.kernel.org became the official mailing list for kmod
Packit a3a425
Packit a3a425
kmod 1
Packit a3a425
======
Packit a3a425
Packit a3a425
First version of kmod and its library, libkmod.
Packit a3a425
Packit a3a425
In the libkmod it's currently possible to:
Packit a3a425
	- List modules currently loaded
Packit a3a425
	- Get information about loaded modules such as initstate, refcount,
Packit a3a425
	  holders, sections, address and size
Packit a3a425
	- Lookup modules by alias, module name or path
Packit a3a425
	- Insert modules: options from configuration and extra options can be
Packit a3a425
	  passed, but flags are not implemented, yet
Packit a3a425
	- Remove modules
Packit a3a425
	- Filter list of modules using blacklist
Packit a3a425
	- For each module, get the its list of options and install/remove
Packit a3a425
	  commands
Packit a3a425
	- Indexes can be loaded on startup to speedup lookups later
Packit a3a425
Packit a3a425
Tools provided with the same set of options as in module-init-tools:
Packit a3a425
	- kmod-lsmod
Packit a3a425
	- kmod-insmod
Packit a3a425
	- kmod-rmmod
Packit a3a425
	- kmod-modprobe, with some functionality still missing (use of softdep,
Packit a3a425
	  dump configuration, show modversions)