diff options
Diffstat (limited to 'fs/namespace.c')
| -rw-r--r-- | fs/namespace.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/namespace.c b/fs/namespace.c index 4b1af01c2fb4..46f99bc585bd 100644 --- a/fs/namespace.c +++ b/fs/namespace.c | |||
| @@ -67,6 +67,8 @@ struct vfsmount *alloc_vfsmnt(const char *name) | |||
| 67 | INIT_LIST_HEAD(&mnt->mnt_list); | 67 | INIT_LIST_HEAD(&mnt->mnt_list); |
| 68 | INIT_LIST_HEAD(&mnt->mnt_expire); | 68 | INIT_LIST_HEAD(&mnt->mnt_expire); |
| 69 | INIT_LIST_HEAD(&mnt->mnt_share); | 69 | INIT_LIST_HEAD(&mnt->mnt_share); |
| 70 | INIT_LIST_HEAD(&mnt->mnt_slave_list); | ||
| 71 | INIT_LIST_HEAD(&mnt->mnt_slave); | ||
| 70 | if (name) { | 72 | if (name) { |
| 71 | int size = strlen(name) + 1; | 73 | int size = strlen(name) + 1; |
| 72 | char *newname = kmalloc(size, GFP_KERNEL); | 74 | char *newname = kmalloc(size, GFP_KERNEL); |
| @@ -1243,7 +1245,7 @@ long do_mount(char *dev_name, char *dir_name, char *type_page, | |||
| 1243 | data_page); | 1245 | data_page); |
| 1244 | else if (flags & MS_BIND) | 1246 | else if (flags & MS_BIND) |
| 1245 | retval = do_loopback(&nd, dev_name, flags & MS_REC); | 1247 | retval = do_loopback(&nd, dev_name, flags & MS_REC); |
| 1246 | else if (flags & (MS_SHARED | MS_PRIVATE)) | 1248 | else if (flags & (MS_SHARED | MS_PRIVATE | MS_SLAVE)) |
| 1247 | retval = do_change_type(&nd, flags); | 1249 | retval = do_change_type(&nd, flags); |
| 1248 | else if (flags & MS_MOVE) | 1250 | else if (flags & MS_MOVE) |
| 1249 | retval = do_move_mount(&nd, dev_name); | 1251 | retval = do_move_mount(&nd, dev_name); |
