summaryrefslogtreecommitdiffstats
path: root/drivers/mtd/nand/nandsim.c
diff options
context:
space:
mode:
authorDavid Woodhouse <dwmw2@infradead.org>2006-05-14 02:20:46 +0200
committerDavid Woodhouse <dwmw2@infradead.org>2006-05-14 02:20:46 +0200
commit552d9205186428a1e2a49ed577bcbba9f777af37 (patch)
treed61e09abae0ad18a3beef281384e576d8a54c145 /drivers/mtd/nand/nandsim.c
parentmtd: fix memory leaks in phram_setup (diff)
downloadlinux-552d9205186428a1e2a49ed577bcbba9f777af37.tar.xz
linux-552d9205186428a1e2a49ed577bcbba9f777af37.zip
[MTD] Fix module refcounting in NAND board drivers.
The _board_ driver needs to be mtd->owner, and it in turn pins the nand.ko module. Fix them all to actually do that, and fix nand.ko not to overwrite it -- and also to check that the caller sets it, if the caller is a module. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Diffstat (limited to 'drivers/mtd/nand/nandsim.c')
-rw-r--r--drivers/mtd/nand/nandsim.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/mtd/nand/nandsim.c b/drivers/mtd/nand/nandsim.c
index a0af92cc7efd..6903f5b903c6 100644
--- a/drivers/mtd/nand/nandsim.c
+++ b/drivers/mtd/nand/nandsim.c
@@ -1546,6 +1546,8 @@ static int __init ns_init_module(void)
chip->options |= NAND_BUSWIDTH_16;
}
+ nsmtd->owner = THIS_MODULE;
+
if ((retval = nand_scan(nsmtd, 1)) != 0) {
NS_ERR("can't register NAND Simulator\n");
if (retval > 0)