git: dm - Modularize it fully
Alex Hornung
alexh at crater.dragonflybsd.org
Wed Dec 1 03:58:33 PST 2010
commit 7115a22b2de523133512d25500721a982187e9eb
Author: Alex Hornung <ahornung at gmail.com>
Date: Wed Dec 1 10:17:55 2010 +0000
dm - Modularize it fully
* Move each of the targets (except error and zero) into a subdirectory
in targets/.
* Change the macro DM_TARGET_MODULE to also let the module depend on dm.
* Add a new macro DM_TARGET_BUILTIN, which must be used instead of
DM_TARGET_MODULE for targets that are compiled into the main dm.ko
instead of a separate module. Not doing this will prevent dm.ko from
unloading.
* Enable automatic loading of target modules if they aren't builtin or
loaded yet. Automatically loaded modules can be unloaded via kldunload
safely via a little hack (see source).
* NOTE: automatic loading doesn't always work. /boot must be mounted
already, so if you are planning on encrypting your swap or similar
stuff, you need to *EXPLICITLY* load dm_target_crypt.ko via the
loader.
* NOTE: PLEASE NOTE THE NOTE ABOVE!
* Fix a little issue with dm_target_crypt that would print "unloaded"
even if it wouldn't unload.
* Change the name of dm_target_stripe to dm_target_striped, since the
target is actually called "striped".
* Move dm.h to sys/sys/dm.h
* Get rid of files.dm, a leftover from the import
Summary of changes:
sys/conf/files | 8 +-
sys/config/LINT | 3 +
sys/dev/disk/dm/Makefile | 5 +-
sys/dev/disk/dm/device-mapper.c | 21 +-
sys/dev/disk/dm/dm.h | 375 ------
sys/dev/disk/dm/dm_dev.c | 2 +-
sys/dev/disk/dm/dm_ioctl.c | 5 +-
sys/dev/disk/dm/dm_pdev.c | 2 +-
sys/dev/disk/dm/dm_table.c | 2 +-
sys/dev/disk/dm/dm_target.c | 35 +-
sys/dev/disk/dm/dm_target_crypt.c | 1402 -------------------
sys/dev/disk/dm/dm_target_dmirror.c | 389 ------
sys/dev/disk/dm/dm_target_error.c | 6 +-
sys/dev/disk/dm/dm_target_linear.c | 292 ----
sys/dev/disk/dm/dm_target_stripe.c | 449 -------
sys/dev/disk/dm/dm_target_zero.c | 6 +-
sys/dev/disk/dm/{ => doc}/TODO | 0
sys/dev/disk/dm/files.dm | 9 -
sys/dev/disk/dm/targets/Makefile | 3 +
sys/dev/disk/dm/targets/crypt/Makefile | 9 +
sys/dev/disk/dm/targets/crypt/dm_target_crypt.c | 1403 ++++++++++++++++++++
sys/dev/disk/dm/targets/dmirror/Makefile | 8 +
.../disk/dm/targets/dmirror/dm_target_dmirror.c | 389 ++++++
.../dm/{ => targets/dmirror}/dmirror_notes.txt | 0
sys/dev/disk/dm/targets/linear/Makefile | 8 +
sys/dev/disk/dm/targets/linear/dm_target_linear.c | 292 ++++
.../dm/{ => targets/mirror}/dm_target_mirror.c | 0
.../dm/{ => targets/snapshot}/dm_target_snapshot.c | 0
sys/dev/disk/dm/targets/striped/Makefile | 8 +
.../disk/dm/targets/striped/dm_target_striped.c | 449 +++++++
sys/sys/dm.h | 388 ++++++
31 files changed, 3031 insertions(+), 2937 deletions(-)
delete mode 100644 sys/dev/disk/dm/dm.h
delete mode 100644 sys/dev/disk/dm/dm_target_crypt.c
delete mode 100644 sys/dev/disk/dm/dm_target_dmirror.c
delete mode 100644 sys/dev/disk/dm/dm_target_linear.c
delete mode 100644 sys/dev/disk/dm/dm_target_stripe.c
rename sys/dev/disk/dm/{ => doc}/TODO (100%)
delete mode 100644 sys/dev/disk/dm/files.dm
create mode 100644 sys/dev/disk/dm/targets/Makefile
create mode 100644 sys/dev/disk/dm/targets/crypt/Makefile
create mode 100644 sys/dev/disk/dm/targets/crypt/dm_target_crypt.c
create mode 100644 sys/dev/disk/dm/targets/dmirror/Makefile
create mode 100644 sys/dev/disk/dm/targets/dmirror/dm_target_dmirror.c
rename sys/dev/disk/dm/{ => targets/dmirror}/dmirror_notes.txt (100%)
create mode 100644 sys/dev/disk/dm/targets/linear/Makefile
create mode 100644 sys/dev/disk/dm/targets/linear/dm_target_linear.c
rename sys/dev/disk/dm/{ => targets/mirror}/dm_target_mirror.c (100%)
rename sys/dev/disk/dm/{ => targets/snapshot}/dm_target_snapshot.c (100%)
create mode 100644 sys/dev/disk/dm/targets/striped/Makefile
create mode 100644 sys/dev/disk/dm/targets/striped/dm_target_striped.c
create mode 100644 sys/sys/dm.h
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/7115a22b2de523133512d25500721a982187e9eb
--
DragonFly BSD source repository
More information about the Commits
mailing list