mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-10 07:50:04 +00:00
nfsd: use DEFINE_SHOW_ATTRIBUTE to define nfsd_file_cache_stats_fops
Use DEFINE_SHOW_ATTRIBUTE helper macro to simplify the code. Signed-off-by: ChenXiaoSong <chenxiaosong2@huawei.com> Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
This commit is contained in:
parent
64776611a0
commit
1342f9dd3f
@ -1212,7 +1212,7 @@ nfsd_file_create(struct svc_rqst *rqstp, struct svc_fh *fhp,
|
|||||||
* scraping this file for info should test the labels to ensure they're
|
* scraping this file for info should test the labels to ensure they're
|
||||||
* getting the correct field.
|
* getting the correct field.
|
||||||
*/
|
*/
|
||||||
static int nfsd_file_cache_stats_show(struct seq_file *m, void *v)
|
int nfsd_file_cache_stats_show(struct seq_file *m, void *v)
|
||||||
{
|
{
|
||||||
unsigned long releases = 0, pages_flushed = 0, evictions = 0;
|
unsigned long releases = 0, pages_flushed = 0, evictions = 0;
|
||||||
unsigned long hits = 0, acquisitions = 0;
|
unsigned long hits = 0, acquisitions = 0;
|
||||||
@ -1259,8 +1259,3 @@ static int nfsd_file_cache_stats_show(struct seq_file *m, void *v)
|
|||||||
seq_printf(m, "pages flushed: %lu\n", pages_flushed);
|
seq_printf(m, "pages flushed: %lu\n", pages_flushed);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int nfsd_file_cache_stats_open(struct inode *inode, struct file *file)
|
|
||||||
{
|
|
||||||
return single_open(file, nfsd_file_cache_stats_show, NULL);
|
|
||||||
}
|
|
||||||
|
@ -60,5 +60,5 @@ __be32 nfsd_file_acquire(struct svc_rqst *rqstp, struct svc_fh *fhp,
|
|||||||
unsigned int may_flags, struct nfsd_file **nfp);
|
unsigned int may_flags, struct nfsd_file **nfp);
|
||||||
__be32 nfsd_file_create(struct svc_rqst *rqstp, struct svc_fh *fhp,
|
__be32 nfsd_file_create(struct svc_rqst *rqstp, struct svc_fh *fhp,
|
||||||
unsigned int may_flags, struct nfsd_file **nfp);
|
unsigned int may_flags, struct nfsd_file **nfp);
|
||||||
int nfsd_file_cache_stats_open(struct inode *, struct file *);
|
int nfsd_file_cache_stats_show(struct seq_file *m, void *v);
|
||||||
#endif /* _FS_NFSD_FILECACHE_H */
|
#endif /* _FS_NFSD_FILECACHE_H */
|
||||||
|
@ -206,12 +206,7 @@ static const struct file_operations pool_stats_operations = {
|
|||||||
|
|
||||||
DEFINE_SHOW_ATTRIBUTE(nfsd_reply_cache_stats);
|
DEFINE_SHOW_ATTRIBUTE(nfsd_reply_cache_stats);
|
||||||
|
|
||||||
static const struct file_operations filecache_ops = {
|
DEFINE_SHOW_ATTRIBUTE(nfsd_file_cache_stats);
|
||||||
.open = nfsd_file_cache_stats_open,
|
|
||||||
.read = seq_read,
|
|
||||||
.llseek = seq_lseek,
|
|
||||||
.release = single_release,
|
|
||||||
};
|
|
||||||
|
|
||||||
/*----------------------------------------------------------------------------*/
|
/*----------------------------------------------------------------------------*/
|
||||||
/*
|
/*
|
||||||
@ -1355,7 +1350,7 @@ static int nfsd_fill_super(struct super_block *sb, struct fs_context *fc)
|
|||||||
[NFSD_Ports] = {"portlist", &transaction_ops, S_IWUSR|S_IRUGO},
|
[NFSD_Ports] = {"portlist", &transaction_ops, S_IWUSR|S_IRUGO},
|
||||||
[NFSD_MaxBlkSize] = {"max_block_size", &transaction_ops, S_IWUSR|S_IRUGO},
|
[NFSD_MaxBlkSize] = {"max_block_size", &transaction_ops, S_IWUSR|S_IRUGO},
|
||||||
[NFSD_MaxConnections] = {"max_connections", &transaction_ops, S_IWUSR|S_IRUGO},
|
[NFSD_MaxConnections] = {"max_connections", &transaction_ops, S_IWUSR|S_IRUGO},
|
||||||
[NFSD_Filecache] = {"filecache", &filecache_ops, S_IRUGO},
|
[NFSD_Filecache] = {"filecache", &nfsd_file_cache_stats_fops, S_IRUGO},
|
||||||
#if defined(CONFIG_SUNRPC_GSS) || defined(CONFIG_SUNRPC_GSS_MODULE)
|
#if defined(CONFIG_SUNRPC_GSS) || defined(CONFIG_SUNRPC_GSS_MODULE)
|
||||||
[NFSD_SupportedEnctypes] = {"supported_krb5_enctypes",
|
[NFSD_SupportedEnctypes] = {"supported_krb5_enctypes",
|
||||||
&supported_enctypes_fops, S_IRUGO},
|
&supported_enctypes_fops, S_IRUGO},
|
||||||
|
Loading…
x
Reference in New Issue
Block a user