Hi, > The [permanent] tag indicates that the module has no module_exit, and > thus can't be unloaded. Thanks for pointing out. i realized that i have used exit_module and not cleanup_module. Changing to cleanup_module works as expected. Regards, Adil On Wed, Oct 6, 2010 at 9:57 PM, Dave Hylands <dhylands@xxxxxxxxx> wrote: > Hi Adil, > > On Wed, Oct 6, 2010 at 5:30 AM, Adil Mujeeb <mujeeb.adil@xxxxxxxxx> wrote: >> Hi list, >> >> I am trying to create a dummy module for learning purpose. For “hello >> world” example, everything goes fine. But when I tried to add >> register_filesystem and unregister_filesystem call the behavior is >> unexpected. I am not able to unload my module. >> >> My module has single file named rkfs_mod.c: >> >> [adil@tom kernel]$ cat rkfs_mod.c >> #include <linux/module.h> >> #include <linux/fs.h> >> >> static struct super_block *rkfs_get_sb(struct file_system_type *fs_type, >> int flags, char *dev_name, void *raw_data) >> { >> printk("get_sb call\n"); >> return NULL; >> } >> >> static void rkfs_kill_sb(struct super_block *s) >> { >> printk("kill sb \n"); >> return; >> } >> >> static struct file_system_type rkfs = { >> name: "rkfs_mod", >> get_sb: rkfs_get_sb, >> kill_sb: rkfs_kill_sb, >> owner: THIS_MODULE >> }; >> >> int init_module(void) { >> int err; >> printk("Registering the filesystem\n"); >> err = register_filesystem( &rkfs ); >> return err; >> } >> >> void exit_module(void){ >> printk("Unregisterign the filesystem\n"); >> unregister_filesystem(&rkfs); >> } >> [adil@tom kernel]$ >> >> My Makefile contents: >> >> [adil@tom kernel]$ cat Makefile >> obj-m += rkfs_mod.o >> all: >> make -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules >> clean : >> make -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean >> [adil@tom kernel]$ >> >> [adil@tom kernel]$ uname -a >> Linux tom.HCLTECH 2.6.30 #1 SMP Thu Dec 17 16:45:24 IST 2009 i686 i686 >> i386 GNU/Linux >> [adil@tom kernel]$ >> >> Module loading is successful but unloading fails. >> >> [root@tom linux-2.6.30]# /sbin/lsmod | grep rkfs >> rkfs_mod 1452 0 [permanent] > > The [permanent] tag indicates that the module has no module_exit, and > thus can't be unloaded. > > -- > Dave Hylands > Shuswap, BC, Canada > http://www.DaveHylands.com/ > -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ