[PATCH] In-kernel Module Loader
authorRusty Russell <rusty@rustcorp.com.au>
Mon, 11 Nov 2002 01:08:07 +0000 (17:08 -0800)
committerAndy Grover <agrover@groveronline.com>
Mon, 11 Nov 2002 01:08:07 +0000 (17:08 -0800)
commitaa65be3f456be1ac4359f7fffeb7b4ae3c149419
tree7deb9cf5ee0103545138396b83bc260092ab8240
parent850b830c9639af788e2917aed3aea8d8bb9da1a1
[PATCH] In-kernel Module Loader

This is an implementation of the in-kernel module loader extending
the try_inc_mod_count() primitive and making its use compulsory.
This has the benifit of simplicity, and similarity to the existing
scheme.  To reduce the cost of the constant increments and
decrements, reference counters are lockless and per-cpu.

Eliminated (coming in following patches):
 o Modversions
 o Module parameters
 o kallsyms
 o EXPORT_SYMBOL_GPL and MODULE_LICENCE checks
 o DEVICE_TABLE support.

New features:
 o Typesafe symbol_get/symbol_put
 o Single "insert this module" syscall interface allows trivial userspace.
 o Raceless loading and unloading

You will need the trivial replacement module utilities from:
http://ozlabs.org/~rusty/module-init-tools-0.6.tar.gz
28 files changed:
Makefile
arch/i386/Kconfig
arch/ia64/Kconfig
arch/ppc/Kconfig
arch/x86_64/Kconfig
drivers/block/floppy.c
drivers/char/ftape/compressor/zftape-compress.c
fs/filesystems.c
fs/proc/proc_misc.c
include/linux/cpu.h
include/linux/elf.h
include/linux/init.h
include/linux/kmod.h
include/linux/module.h
init/Kconfig
init/main.c
kernel/Makefile
kernel/exec_domain.c
kernel/intermodule.c [new file with mode: 0644]
kernel/kmod.c
kernel/ksyms.c
kernel/module.c
kernel/sys.c
lib/zlib_deflate/deflate_syms.c
lib/zlib_inflate/inflate_syms.c
net/ipv4/netfilter/ip_nat_helper.c
net/ipv6/af_inet6.c
scripts/Makefile.modinst