aboutsummaryrefslogtreecommitdiffstats
path: root/fs/libfs.c
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2006-06-24 08:41:41 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2006-06-24 13:07:53 -0400
commit816724e65c72a90a44fbad0ef0b59b186c85fa90 (patch)
tree421fa29aedff988e392f92780637553e275d37a0 /fs/libfs.c
parent70ac4385a13f78bc478f26d317511893741b05bd (diff)
parentd384ea691fe4ea8c2dd5b9b8d9042eb181776f18 (diff)
Merge branch 'master' of /home/trondmy/kernel/linux-2.6/
Conflicts: fs/nfs/inode.c fs/super.c Fix conflicts between patch 'NFS: Split fs/nfs/inode.c' and patch 'VFS: Permit filesystem to override root dentry on mount'
Diffstat (limited to 'fs/libfs.c')
-rw-r--r--fs/libfs.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/fs/libfs.c b/fs/libfs.c
index 4a3ec9ad8bed..fc785d8befb9 100644
--- a/fs/libfs.c
+++ b/fs/libfs.c
@@ -20,9 +20,9 @@ int simple_getattr(struct vfsmount *mnt, struct dentry *dentry,
20 return 0; 20 return 0;
21} 21}
22 22
23int simple_statfs(struct super_block *sb, struct kstatfs *buf) 23int simple_statfs(struct dentry *dentry, struct kstatfs *buf)
24{ 24{
25 buf->f_type = sb->s_magic; 25 buf->f_type = dentry->d_sb->s_magic;
26 buf->f_bsize = PAGE_CACHE_SIZE; 26 buf->f_bsize = PAGE_CACHE_SIZE;
27 buf->f_namelen = NAME_MAX; 27 buf->f_namelen = NAME_MAX;
28 return 0; 28 return 0;
@@ -196,9 +196,9 @@ struct inode_operations simple_dir_inode_operations = {
196 * Common helper for pseudo-filesystems (sockfs, pipefs, bdev - stuff that 196 * Common helper for pseudo-filesystems (sockfs, pipefs, bdev - stuff that
197 * will never be mountable) 197 * will never be mountable)
198 */ 198 */
199struct super_block * 199int get_sb_pseudo(struct file_system_type *fs_type, char *name,
200get_sb_pseudo(struct file_system_type *fs_type, char *name, 200 struct super_operations *ops, unsigned long magic,
201 struct super_operations *ops, unsigned long magic) 201 struct vfsmount *mnt)
202{ 202{
203 struct super_block *s = sget(fs_type, NULL, set_anon_super, NULL); 203 struct super_block *s = sget(fs_type, NULL, set_anon_super, NULL);
204 static struct super_operations default_ops = {.statfs = simple_statfs}; 204 static struct super_operations default_ops = {.statfs = simple_statfs};
@@ -207,7 +207,7 @@ get_sb_pseudo(struct file_system_type *fs_type, char *name,
207 struct qstr d_name = {.name = name, .len = strlen(name)}; 207 struct qstr d_name = {.name = name, .len = strlen(name)};
208 208
209 if (IS_ERR(s)) 209 if (IS_ERR(s))
210 return s; 210 return PTR_ERR(s);
211 211
212 s->s_flags = MS_NOUSER; 212 s->s_flags = MS_NOUSER;
213 s->s_maxbytes = ~0ULL; 213 s->s_maxbytes = ~0ULL;
@@ -232,12 +232,12 @@ get_sb_pseudo(struct file_system_type *fs_type, char *name,
232 d_instantiate(dentry, root); 232 d_instantiate(dentry, root);
233 s->s_root = dentry; 233 s->s_root = dentry;
234 s->s_flags |= MS_ACTIVE; 234 s->s_flags |= MS_ACTIVE;
235 return s; 235 return simple_set_mnt(mnt, s);
236 236
237Enomem: 237Enomem:
238 up_write(&s->s_umount); 238 up_write(&s->s_umount);
239 deactivate_super(s); 239 deactivate_super(s);
240 return ERR_PTR(-ENOMEM); 240 return -ENOMEM;
241} 241}
242 242
243int simple_link(struct dentry *old_dentry, struct inode *dir, struct dentry *dentry) 243int simple_link(struct dentry *old_dentry, struct inode *dir, struct dentry *dentry)