How to mount own file system in linux

From: Chinmaya Mishra
Date: Wed Jul 19 2006 - 04:41:33 EST


Hi all,
I want to create new file system in linux 2.6.10 kernel just to print the super block information.
Can you suggest me where I can get some good documents to proceed or any dummy code if any.

I have tried this with the following code but it gives some warning messages during compilation. The file system is registered but during the mount command segmentation fault occurs.

#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/version.h>
#include <linux/fs.h>
#include <linux/sched.h>

static struct super_block *rfs_read_super( struct super_block *sb, void *buf, int size);
static struct file_system_type rfs = {"rfs", 0, rfs_read_super, NULL};
/*--------------------------------------------------------------------------------------------*/

static struct super_block *rfs_read_super( struct super_block *sb, void *buf, int size) {
printk("rkfs: read_super returning a valid super_block\n" );
sb->s_blocksize = 1024;
sb->s_blocksize_bits = 10;
return sb;
}
/*--------------------------------------------------------------------------------------------*/

int init_module(void) {
int err;
err = register_filesystem(&rfs);
printk("rkfs: file system registered\n" );
return err;
}
/*--------------------------------------------------------------------------------------------*/

void cleanup_module(void) {
unregister_filesystem(&rfs);
printk("rkfs: file system unregistered\n" );
}
/*--------------------------------------------------------------------------------------------*/

MODULE_LICENSE("GPL");

regards,
chinmaya

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/