diff options
-rw-r--r-- | drivers/base/Kconfig | 7 | ||||
-rw-r--r-- | drivers/base/devtmpfs.c | 5 | ||||
-rw-r--r-- | fs/ramfs/inode.c | 2 | ||||
-rw-r--r-- | include/linux/ramfs.h | 2 |
4 files changed, 13 insertions, 3 deletions
diff --git a/drivers/base/Kconfig b/drivers/base/Kconfig index fd52c48ee762..ef38aff737eb 100644 --- a/drivers/base/Kconfig +++ b/drivers/base/Kconfig | |||
@@ -18,9 +18,9 @@ config UEVENT_HELPER_PATH | |||
18 | 18 | ||
19 | config DEVTMPFS | 19 | config DEVTMPFS |
20 | bool "Maintain a devtmpfs filesystem to mount at /dev" | 20 | bool "Maintain a devtmpfs filesystem to mount at /dev" |
21 | depends on HOTPLUG && SHMEM && TMPFS | 21 | depends on HOTPLUG |
22 | help | 22 | help |
23 | This creates a tmpfs filesystem instance early at bootup. | 23 | This creates a tmpfs/ramfs filesystem instance early at bootup. |
24 | In this filesystem, the kernel driver core maintains device | 24 | In this filesystem, the kernel driver core maintains device |
25 | nodes with their default names and permissions for all | 25 | nodes with their default names and permissions for all |
26 | registered devices with an assigned major/minor number. | 26 | registered devices with an assigned major/minor number. |
@@ -33,6 +33,9 @@ config DEVTMPFS | |||
33 | functional /dev without any further help. It also allows simple | 33 | functional /dev without any further help. It also allows simple |
34 | rescue systems, and reliably handles dynamic major/minor numbers. | 34 | rescue systems, and reliably handles dynamic major/minor numbers. |
35 | 35 | ||
36 | Notice: if CONFIG_TMPFS isn't enabled, the simpler ramfs | ||
37 | file system will be used instead. | ||
38 | |||
36 | config DEVTMPFS_MOUNT | 39 | config DEVTMPFS_MOUNT |
37 | bool "Automount devtmpfs at /dev, after the kernel mounted the rootfs" | 40 | bool "Automount devtmpfs at /dev, after the kernel mounted the rootfs" |
38 | depends on DEVTMPFS | 41 | depends on DEVTMPFS |
diff --git a/drivers/base/devtmpfs.c b/drivers/base/devtmpfs.c index 057cf11326bf..af0600143d1c 100644 --- a/drivers/base/devtmpfs.c +++ b/drivers/base/devtmpfs.c | |||
@@ -20,6 +20,7 @@ | |||
20 | #include <linux/namei.h> | 20 | #include <linux/namei.h> |
21 | #include <linux/fs.h> | 21 | #include <linux/fs.h> |
22 | #include <linux/shmem_fs.h> | 22 | #include <linux/shmem_fs.h> |
23 | #include <linux/ramfs.h> | ||
23 | #include <linux/cred.h> | 24 | #include <linux/cred.h> |
24 | #include <linux/sched.h> | 25 | #include <linux/sched.h> |
25 | #include <linux/init_task.h> | 26 | #include <linux/init_task.h> |
@@ -45,7 +46,11 @@ __setup("devtmpfs.mount=", mount_param); | |||
45 | static int dev_get_sb(struct file_system_type *fs_type, int flags, | 46 | static int dev_get_sb(struct file_system_type *fs_type, int flags, |
46 | const char *dev_name, void *data, struct vfsmount *mnt) | 47 | const char *dev_name, void *data, struct vfsmount *mnt) |
47 | { | 48 | { |
49 | #ifdef CONFIG_TMPFS | ||
48 | return get_sb_single(fs_type, flags, data, shmem_fill_super, mnt); | 50 | return get_sb_single(fs_type, flags, data, shmem_fill_super, mnt); |
51 | #else | ||
52 | return get_sb_single(fs_type, flags, data, ramfs_fill_super, mnt); | ||
53 | #endif | ||
49 | } | 54 | } |
50 | 55 | ||
51 | static struct file_system_type dev_fs_type = { | 56 | static struct file_system_type dev_fs_type = { |
diff --git a/fs/ramfs/inode.c b/fs/ramfs/inode.c index c94853473ca9..f47cd212dee1 100644 --- a/fs/ramfs/inode.c +++ b/fs/ramfs/inode.c | |||
@@ -214,7 +214,7 @@ static int ramfs_parse_options(char *data, struct ramfs_mount_opts *opts) | |||
214 | return 0; | 214 | return 0; |
215 | } | 215 | } |
216 | 216 | ||
217 | static int ramfs_fill_super(struct super_block * sb, void * data, int silent) | 217 | int ramfs_fill_super(struct super_block *sb, void *data, int silent) |
218 | { | 218 | { |
219 | struct ramfs_fs_info *fsi; | 219 | struct ramfs_fs_info *fsi; |
220 | struct inode *inode = NULL; | 220 | struct inode *inode = NULL; |
diff --git a/include/linux/ramfs.h b/include/linux/ramfs.h index 4e768dda87b0..8600508c77a6 100644 --- a/include/linux/ramfs.h +++ b/include/linux/ramfs.h | |||
@@ -20,4 +20,6 @@ extern const struct file_operations ramfs_file_operations; | |||
20 | extern const struct vm_operations_struct generic_file_vm_ops; | 20 | extern const struct vm_operations_struct generic_file_vm_ops; |
21 | extern int __init init_rootfs(void); | 21 | extern int __init init_rootfs(void); |
22 | 22 | ||
23 | int ramfs_fill_super(struct super_block *sb, void *data, int silent); | ||
24 | |||
23 | #endif | 25 | #endif |