diff options
| author | Jens Axboe <axboe@burns.home.kernel.dk> | 2002-02-07 10:37:19 +0100 |
|---|---|---|
| committer | Jens Axboe <axboe@burns.home.kernel.dk> | 2002-02-07 10:37:19 +0100 |
| commit | 2adf779dd193e1c8673f5896da4fef1dda830774 (patch) | |
| tree | f8014bbf33b023dd09bda6f9145bb776f73389d2 /fs/devfs/base.c | |
| parent | 07916eb45f4a6c63acb93e269c10490e4e623a0c (diff) | |
| parent | 0ec120046dee44027a28b66a3c28d1031982a9eb (diff) | |
Merge http://linux.bkbits.net/linux-2.5
into burns.home.kernel.dk:/usr/local/kernel/BK/linux-2.5
Diffstat (limited to 'fs/devfs/base.c')
| -rw-r--r-- | fs/devfs/base.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/fs/devfs/base.c b/fs/devfs/base.c index 89a698a63ea6..6372557356d9 100644 --- a/fs/devfs/base.c +++ b/fs/devfs/base.c @@ -3218,8 +3218,7 @@ static struct inode_operations devfs_symlink_iops = setattr: devfs_notify_change, }; -static struct super_block *devfs_read_super (struct super_block *sb, - void *data, int silent) +static int devfs_fill_super (struct super_block *sb, void *data, int silent) { struct inode *root_inode = NULL; @@ -3238,17 +3237,24 @@ static struct super_block *devfs_read_super (struct super_block *sb, sb->s_root = d_alloc_root (root_inode); if (!sb->s_root) goto out_no_root; DPRINTK (DEBUG_S_READ, "(): made devfs ptr: %p\n", sb->u.generic_sbp); - return sb; + return 0; out_no_root: PRINTK ("(): get root inode failed\n"); if (root_inode) iput (root_inode); - return NULL; + return -EINVAL; } /* End Function devfs_read_super */ +static struct super_block *devfs_get_sb(struct file_system_type *fs_type, + int flags, char *dev_name, void *data) +{ + return get_sb_single(fs_type, flags, data, devfs_fill_super); +} -static DECLARE_FSTYPE (devfs_fs_type, DEVFS_NAME, devfs_read_super, FS_SINGLE); - +static struct file_system_type devfs_fs_type = { + name: DEVFS_NAME, + get_sb: devfs_get_sb, +}; /* File operations for devfsd follow */ |
