mirror of https://gitee.com/openkylin/linux.git
vfs: switch ->show_stats to struct dentry *
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
cdcf116d44
commit
64132379d5
|
@ -1759,11 +1759,11 @@ static int pohmelfs_root_handshake(struct pohmelfs_sb *psb)
|
|||
return err;
|
||||
}
|
||||
|
||||
static int pohmelfs_show_stats(struct seq_file *m, struct vfsmount *mnt)
|
||||
static int pohmelfs_show_stats(struct seq_file *m, struct dentry *root)
|
||||
{
|
||||
struct netfs_state *st;
|
||||
struct pohmelfs_ctl *ctl;
|
||||
struct pohmelfs_sb *psb = POHMELFS_SB(mnt->mnt_sb);
|
||||
struct pohmelfs_sb *psb = POHMELFS_SB(root->d_sb);
|
||||
struct pohmelfs_config *c;
|
||||
|
||||
mutex_lock(&psb->state_lock);
|
||||
|
|
|
@ -488,7 +488,7 @@ static void cifs_umount_begin(struct super_block *sb)
|
|||
}
|
||||
|
||||
#ifdef CONFIG_CIFS_STATS2
|
||||
static int cifs_show_stats(struct seq_file *s, struct vfsmount *mnt)
|
||||
static int cifs_show_stats(struct seq_file *s, struct dentry *root)
|
||||
{
|
||||
/* BB FIXME */
|
||||
return 0;
|
||||
|
|
|
@ -265,7 +265,7 @@ static int nfs_statfs(struct dentry *, struct kstatfs *);
|
|||
static int nfs_show_options(struct seq_file *, struct vfsmount *);
|
||||
static int nfs_show_devname(struct seq_file *, struct vfsmount *);
|
||||
static int nfs_show_path(struct seq_file *, struct vfsmount *);
|
||||
static int nfs_show_stats(struct seq_file *, struct vfsmount *);
|
||||
static int nfs_show_stats(struct seq_file *, struct dentry *);
|
||||
static struct dentry *nfs_fs_mount(struct file_system_type *,
|
||||
int, const char *, void *);
|
||||
static struct dentry *nfs_xdev_mount(struct file_system_type *fs_type,
|
||||
|
@ -785,10 +785,10 @@ static int nfs_show_path(struct seq_file *m, struct vfsmount *mnt)
|
|||
/*
|
||||
* Present statistical information for this VFS mountpoint
|
||||
*/
|
||||
static int nfs_show_stats(struct seq_file *m, struct vfsmount *mnt)
|
||||
static int nfs_show_stats(struct seq_file *m, struct dentry *root)
|
||||
{
|
||||
int i, cpu;
|
||||
struct nfs_server *nfss = NFS_SB(mnt->mnt_sb);
|
||||
struct nfs_server *nfss = NFS_SB(root->d_sb);
|
||||
struct rpc_auth *auth = nfss->client->cl_auth;
|
||||
struct nfs_iostats totals = { };
|
||||
|
||||
|
@ -798,10 +798,10 @@ static int nfs_show_stats(struct seq_file *m, struct vfsmount *mnt)
|
|||
* Display all mount option settings
|
||||
*/
|
||||
seq_printf(m, "\n\topts:\t");
|
||||
seq_puts(m, mnt->mnt_sb->s_flags & MS_RDONLY ? "ro" : "rw");
|
||||
seq_puts(m, mnt->mnt_sb->s_flags & MS_SYNCHRONOUS ? ",sync" : "");
|
||||
seq_puts(m, mnt->mnt_sb->s_flags & MS_NOATIME ? ",noatime" : "");
|
||||
seq_puts(m, mnt->mnt_sb->s_flags & MS_NODIRATIME ? ",nodiratime" : "");
|
||||
seq_puts(m, root->d_sb->s_flags & MS_RDONLY ? "ro" : "rw");
|
||||
seq_puts(m, root->d_sb->s_flags & MS_SYNCHRONOUS ? ",sync" : "");
|
||||
seq_puts(m, root->d_sb->s_flags & MS_NOATIME ? ",noatime" : "");
|
||||
seq_puts(m, root->d_sb->s_flags & MS_NODIRATIME ? ",nodiratime" : "");
|
||||
nfs_show_mount_options(m, nfss, 1);
|
||||
|
||||
seq_printf(m, "\n\tage:\t%lu", (jiffies - nfss->mount_time) / HZ);
|
||||
|
|
|
@ -183,12 +183,13 @@ static int show_vfsstat(struct seq_file *m, struct vfsmount *mnt)
|
|||
{
|
||||
struct mount *r = real_mount(mnt);
|
||||
struct path mnt_path = { .dentry = mnt->mnt_root, .mnt = mnt };
|
||||
struct super_block *sb = mnt_path.dentry->d_sb;
|
||||
int err = 0;
|
||||
|
||||
/* device */
|
||||
if (mnt->mnt_sb->s_op->show_devname) {
|
||||
if (sb->s_op->show_devname) {
|
||||
seq_puts(m, "device ");
|
||||
err = mnt->mnt_sb->s_op->show_devname(m, mnt);
|
||||
err = sb->s_op->show_devname(m, mnt);
|
||||
} else {
|
||||
if (r->mnt_devname) {
|
||||
seq_puts(m, "device ");
|
||||
|
@ -204,13 +205,13 @@ static int show_vfsstat(struct seq_file *m, struct vfsmount *mnt)
|
|||
|
||||
/* file system type */
|
||||
seq_puts(m, "with fstype ");
|
||||
show_type(m, mnt->mnt_sb);
|
||||
show_type(m, sb);
|
||||
|
||||
/* optional statistics */
|
||||
if (mnt->mnt_sb->s_op->show_stats) {
|
||||
if (sb->s_op->show_stats) {
|
||||
seq_putc(m, ' ');
|
||||
if (!err)
|
||||
err = mnt->mnt_sb->s_op->show_stats(m, mnt);
|
||||
err = sb->s_op->show_stats(m, mnt_path.dentry);
|
||||
}
|
||||
|
||||
seq_putc(m, '\n');
|
||||
|
|
|
@ -1675,7 +1675,7 @@ struct super_operations {
|
|||
int (*show_options)(struct seq_file *, struct vfsmount *);
|
||||
int (*show_devname)(struct seq_file *, struct vfsmount *);
|
||||
int (*show_path)(struct seq_file *, struct vfsmount *);
|
||||
int (*show_stats)(struct seq_file *, struct vfsmount *);
|
||||
int (*show_stats)(struct seq_file *, struct dentry *);
|
||||
#ifdef CONFIG_QUOTA
|
||||
ssize_t (*quota_read)(struct super_block *, int, char *, size_t, loff_t);
|
||||
ssize_t (*quota_write)(struct super_block *, int, const char *, size_t, loff_t);
|
||||
|
|
Loading…
Reference in New Issue