summaryrefslogtreecommitdiff
path: root/sys/dev/dm/dm_target_zero.c
diff options
context:
space:
mode:
authorhaad <haad@NetBSD.org>2009-01-02 11:06:17 +0000
committerhaad <haad@NetBSD.org>2009-01-02 11:06:17 +0000
commit2a2e81e0f1d14b1b9113292e59feb95a431580fc (patch)
tree5f49a6d595000da3eef93fb5865e1067fabd76ab /sys/dev/dm/dm_target_zero.c
parent894d2ad3b73a786b60c31d410d382683827e07c4 (diff)
Properly register dm_target_* modules with module framework.
Diffstat (limited to 'sys/dev/dm/dm_target_zero.c')
-rw-r--r--sys/dev/dm/dm_target_zero.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/dev/dm/dm_target_zero.c b/sys/dev/dm/dm_target_zero.c
index b752559ca50..37f61ed445e 100644
--- a/sys/dev/dm/dm_target_zero.c
+++ b/sys/dev/dm/dm_target_zero.c
@@ -1,4 +1,4 @@
-/* $NetBSD: dm_target_zero.c,v 1.4 2008/12/21 00:59:39 haad Exp $ */
+/* $NetBSD: dm_target_zero.c,v 1.5 2009/01/02 11:06:17 haad Exp $ */
/*
* Copyright (c) 2008 The NetBSD Foundation, Inc.
@@ -62,6 +62,9 @@ dm_target_zero_modcmd(modcmd_t cmd, void *arg)
switch (cmd) {
case MODULE_CMD_INIT:
+ if ((r = module_hold("dm")) != 0)
+ return r;
+
if ((dmt = dm_target_lookup("zero")) != NULL)
return EEXIST;
@@ -83,6 +86,8 @@ dm_target_zero_modcmd(modcmd_t cmd, void *arg)
case MODULE_CMD_FINI:
r = dm_target_rem("zero");
+ module_rele("dm"); /* release usage counter on dm module */
+
break;
case MODULE_CMD_STAT: