cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

stats.h (2048B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2/*
      3 * linux/include/linux/sunrpc/stats.h
      4 *
      5 * Client statistics collection for SUN RPC
      6 *
      7 * Copyright (C) 1996 Olaf Kirch <okir@monad.swb.de>
      8 */
      9
     10#ifndef _LINUX_SUNRPC_STATS_H
     11#define _LINUX_SUNRPC_STATS_H
     12
     13#include <linux/proc_fs.h>
     14
     15struct rpc_stat {
     16	const struct rpc_program *program;
     17
     18	unsigned int		netcnt,
     19				netudpcnt,
     20				nettcpcnt,
     21				nettcpconn,
     22				netreconn;
     23	unsigned int		rpccnt,
     24				rpcretrans,
     25				rpcauthrefresh,
     26				rpcgarbage;
     27};
     28
     29struct svc_stat {
     30	struct svc_program *	program;
     31
     32	unsigned int		netcnt,
     33				netudpcnt,
     34				nettcpcnt,
     35				nettcpconn;
     36	unsigned int		rpccnt,
     37				rpcbadfmt,
     38				rpcbadauth,
     39				rpcbadclnt;
     40};
     41
     42struct net;
     43#ifdef CONFIG_PROC_FS
     44int			rpc_proc_init(struct net *);
     45void			rpc_proc_exit(struct net *);
     46#else
     47static inline int rpc_proc_init(struct net *net)
     48{
     49	return 0;
     50}
     51
     52static inline void rpc_proc_exit(struct net *net)
     53{
     54}
     55#endif
     56
     57#ifdef MODULE
     58void			rpc_modcount(struct inode *, int);
     59#endif
     60
     61#ifdef CONFIG_PROC_FS
     62struct proc_dir_entry *	rpc_proc_register(struct net *,struct rpc_stat *);
     63void			rpc_proc_unregister(struct net *,const char *);
     64void			rpc_proc_zero(const struct rpc_program *);
     65struct proc_dir_entry *	svc_proc_register(struct net *, struct svc_stat *,
     66					  const struct proc_ops *);
     67void			svc_proc_unregister(struct net *, const char *);
     68
     69void			svc_seq_show(struct seq_file *,
     70				     const struct svc_stat *);
     71#else
     72
     73static inline struct proc_dir_entry *rpc_proc_register(struct net *net, struct rpc_stat *s) { return NULL; }
     74static inline void rpc_proc_unregister(struct net *net, const char *p) {}
     75static inline void rpc_proc_zero(const struct rpc_program *p) {}
     76
     77static inline struct proc_dir_entry *svc_proc_register(struct net *net, struct svc_stat *s,
     78						       const struct proc_ops *proc_ops) { return NULL; }
     79static inline void svc_proc_unregister(struct net *net, const char *p) {}
     80
     81static inline void svc_seq_show(struct seq_file *seq,
     82				const struct svc_stat *st) {}
     83#endif
     84
     85#endif /* _LINUX_SUNRPC_STATS_H */