Merge branch 'for-linus2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
* 'for-linus2' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (165 commits) reiserfs: Properly display mount options in /proc/mounts vfs: prevent remount read-only if pending removes vfs: count unlinked inodes vfs: protect remounting superblock read-only vfs: keep list of mounts for each superblock vfs: switch ->show_options() to struct dentry * vfs: switch ->show_path() to struct dentry * vfs: switch ->show_devname() to struct dentry * vfs: switch ->show_stats to struct dentry * switch security_path_chmod() to struct path * vfs: prefer ->dentry->d_sb to ->mnt->mnt_sb vfs: trim includes a bit switch mnt_namespace ->root to struct mount vfs: take /proc/*/mounts and friends to fs/proc_namespace.c vfs: opencode mntget() mnt_set_mountpoint() vfs: spread struct mount - remaining argument of next_mnt() vfs: move fsnotify junk to struct mount vfs: move mnt_devname vfs: move mnt_list to struct mount vfs: switch pnode.h macros to struct mount * ...
This commit is contained in:
@@ -325,17 +325,19 @@ static void __init get_fs_names(char *page)
|
||||
|
||||
static int __init do_mount_root(char *name, char *fs, int flags, void *data)
|
||||
{
|
||||
struct super_block *s;
|
||||
int err = sys_mount(name, "/root", fs, flags, data);
|
||||
if (err)
|
||||
return err;
|
||||
|
||||
sys_chdir((const char __user __force *)"/root");
|
||||
ROOT_DEV = current->fs->pwd.mnt->mnt_sb->s_dev;
|
||||
s = current->fs->pwd.dentry->d_sb;
|
||||
ROOT_DEV = s->s_dev;
|
||||
printk(KERN_INFO
|
||||
"VFS: Mounted root (%s filesystem)%s on device %u:%u.\n",
|
||||
current->fs->pwd.mnt->mnt_sb->s_type->name,
|
||||
current->fs->pwd.mnt->mnt_sb->s_flags & MS_RDONLY ?
|
||||
" readonly" : "", MAJOR(ROOT_DEV), MINOR(ROOT_DEV));
|
||||
s->s_type->name,
|
||||
s->s_flags & MS_RDONLY ? " readonly" : "",
|
||||
MAJOR(ROOT_DEV), MINOR(ROOT_DEV));
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@@ -22,7 +22,7 @@ static void __init error(char *x)
|
||||
|
||||
static __initdata struct hash {
|
||||
int ino, minor, major;
|
||||
mode_t mode;
|
||||
umode_t mode;
|
||||
struct hash *next;
|
||||
char name[N_ALIGN(PATH_MAX)];
|
||||
} *head[32];
|
||||
@@ -35,7 +35,7 @@ static inline int hash(int major, int minor, int ino)
|
||||
}
|
||||
|
||||
static char __init *find_link(int major, int minor, int ino,
|
||||
mode_t mode, char *name)
|
||||
umode_t mode, char *name)
|
||||
{
|
||||
struct hash **p, *q;
|
||||
for (p = head + hash(major, minor, ino); *p; p = &(*p)->next) {
|
||||
@@ -120,7 +120,7 @@ static __initdata time_t mtime;
|
||||
/* cpio header parsing */
|
||||
|
||||
static __initdata unsigned long ino, major, minor, nlink;
|
||||
static __initdata mode_t mode;
|
||||
static __initdata umode_t mode;
|
||||
static __initdata unsigned long body_len, name_len;
|
||||
static __initdata uid_t uid;
|
||||
static __initdata gid_t gid;
|
||||
@@ -276,7 +276,7 @@ static int __init maybe_link(void)
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void __init clean_path(char *path, mode_t mode)
|
||||
static void __init clean_path(char *path, umode_t mode)
|
||||
{
|
||||
struct stat st;
|
||||
|
||||
|
Reference in New Issue
Block a user