Commit d861c630e99febe5ce6055290085556c5b714b06

Authored by Al Viro
1 parent 64132379d5

vfs: switch ->show_devname() to struct dentry *

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>

Showing 3 changed files with 13 additions and 12 deletions Side-by-side Diff

... ... @@ -263,7 +263,7 @@
263 263 static void nfs_umount_begin(struct super_block *);
264 264 static int nfs_statfs(struct dentry *, struct kstatfs *);
265 265 static int nfs_show_options(struct seq_file *, struct vfsmount *);
266   -static int nfs_show_devname(struct seq_file *, struct vfsmount *);
  266 +static int nfs_show_devname(struct seq_file *, struct dentry *);
267 267 static int nfs_show_path(struct seq_file *, struct vfsmount *);
268 268 static int nfs_show_stats(struct seq_file *, struct dentry *);
269 269 static struct dentry *nfs_fs_mount(struct file_system_type *,
270 270  
... ... @@ -760,14 +760,14 @@
760 760 #endif
761 761 #endif
762 762  
763   -static int nfs_show_devname(struct seq_file *m, struct vfsmount *mnt)
  763 +static int nfs_show_devname(struct seq_file *m, struct dentry *root)
764 764 {
765 765 char *page = (char *) __get_free_page(GFP_KERNEL);
766 766 char *devname, *dummy;
767 767 int err = 0;
768 768 if (!page)
769 769 return -ENOMEM;
770   - devname = nfs_path(&dummy, mnt->mnt_root, page, PAGE_SIZE);
  770 + devname = nfs_path(&dummy, root, page, PAGE_SIZE);
771 771 if (IS_ERR(devname))
772 772 err = PTR_ERR(devname);
773 773 else
... ... @@ -94,9 +94,10 @@
94 94 struct mount *r = real_mount(mnt);
95 95 int err = 0;
96 96 struct path mnt_path = { .dentry = mnt->mnt_root, .mnt = mnt };
  97 + struct super_block *sb = mnt_path.dentry->d_sb;
97 98  
98   - if (mnt->mnt_sb->s_op->show_devname) {
99   - err = mnt->mnt_sb->s_op->show_devname(m, mnt);
  99 + if (sb->s_op->show_devname) {
  100 + err = sb->s_op->show_devname(m, mnt_path.dentry);
100 101 if (err)
101 102 goto out;
102 103 } else {
103 104  
104 105  
... ... @@ -105,14 +106,14 @@
105 106 seq_putc(m, ' ');
106 107 seq_path(m, &mnt_path, " \t\n\\");
107 108 seq_putc(m, ' ');
108   - show_type(m, mnt->mnt_sb);
  109 + show_type(m, sb);
109 110 seq_puts(m, __mnt_is_readonly(mnt) ? " ro" : " rw");
110   - err = show_sb_opts(m, mnt->mnt_sb);
  111 + err = show_sb_opts(m, sb);
111 112 if (err)
112 113 goto out;
113 114 show_mnt_opts(m, mnt);
114   - if (mnt->mnt_sb->s_op->show_options)
115   - err = mnt->mnt_sb->s_op->show_options(m, mnt);
  115 + if (sb->s_op->show_options)
  116 + err = sb->s_op->show_options(m, mnt);
116 117 seq_puts(m, " 0 0\n");
117 118 out:
118 119 return err;
... ... @@ -163,7 +164,7 @@
163 164 show_type(m, sb);
164 165 seq_putc(m, ' ');
165 166 if (sb->s_op->show_devname)
166   - err = sb->s_op->show_devname(m, mnt);
  167 + err = sb->s_op->show_devname(m, mnt->mnt_root);
167 168 else
168 169 mangle(m, r->mnt_devname ? r->mnt_devname : "none");
169 170 if (err)
... ... @@ -189,7 +190,7 @@
189 190 /* device */
190 191 if (sb->s_op->show_devname) {
191 192 seq_puts(m, "device ");
192   - err = sb->s_op->show_devname(m, mnt);
  193 + err = sb->s_op->show_devname(m, mnt_path.dentry);
193 194 } else {
194 195 if (r->mnt_devname) {
195 196 seq_puts(m, "device ");
... ... @@ -1673,7 +1673,7 @@
1673 1673 void (*umount_begin) (struct super_block *);
1674 1674  
1675 1675 int (*show_options)(struct seq_file *, struct vfsmount *);
1676   - int (*show_devname)(struct seq_file *, struct vfsmount *);
  1676 + int (*show_devname)(struct seq_file *, struct dentry *);
1677 1677 int (*show_path)(struct seq_file *, struct vfsmount *);
1678 1678 int (*show_stats)(struct seq_file *, struct dentry *);
1679 1679 #ifdef CONFIG_QUOTA