nfs-ganesha 1.4
Classes | Defines | Typedefs | Enumerations | Functions | Variables

nfs_stat.h File Reference

Functions to be used for nfs and mount statistics. More...

#include <unistd.h>
#include <sys/types.h>
#include <sys/param.h>
#include <time.h>
#include <pthread.h>
#include "ganesha_rpc.h"
#include "LRU_List.h"
#include "HashData.h"
#include "HashTable.h"
#include "fsal.h"
#include "cache_inode.h"

Go to the source code of this file.

Classes

struct  nfs_op_stat_item__
struct  nfs_request_stat_item__
struct  nfs_request_stat__
struct  nfs_request_latency_stat__
struct  nfs_stat_client_req_t
struct  nfs_worker_stat__

Defines

#define NFS_V2_NB_COMMAND   18
#define NFS_V3_NB_COMMAND   22
#define NFS_V4_NB_COMMAND   2
#define MNT_V1_NB_COMMAND   6
#define MNT_V3_NB_COMMAND   6
#define RQUOTA_NB_COMMAND   5
#define NFS_V40_NB_OPERATION   39
#define NFS_V41_NB_OPERATION   58
#define ERR_STAT_NO_ERROR   0
#define ERR_STAT_ERROR   1
#define NLM_V4_NB_OPERATION   5

Typedefs

typedef enum nfs_stat_type__ nfs_stat_type_t
typedef struct nfs_op_stat_item__ nfs_op_stat_item_t
typedef struct
nfs_request_stat_item__ 
nfs_request_stat_item_t
typedef struct nfs_request_stat__ nfs_request_stat_t
typedef struct
nfs_request_latency_stat__ 
nfs_request_latency_stat_t
typedef struct nfs_worker_stat__ nfs_worker_stat_t

Enumerations

enum  nfs_stat_type__ { GANESHA_STAT_SUCCESS = 0, GANESHA_STAT_DROP = 1 }
enum  nfs_stat_latency_type_t { SVC_TIME = 0, AWAIT_TIME }
enum  nfs_stat_client_req_type_t {
  PER_SERVER = 0, PER_SERVER_DETAIL, PER_SHARE, PER_SHARE_DETAIL,
  PER_CLIENT, PER_CLIENTSHARE
}

Functions

void nfs_stat_update (nfs_stat_type_t type, nfs_request_stat_t *pstat_req, struct svc_req *preq, nfs_request_latency_stat_t *lstat_req)
void set_min_latency (nfs_request_stat_item_t *cur_stat, unsigned int val)
void set_max_latency (nfs_request_stat_item_t *cur_stat, unsigned int val)
struct timeval time_diff (struct timeval time_from, struct timeval time_to)

Variables

char * nfsv2_function_names []
char * nfsv3_function_names []
char * nfsv4_function_names []
char * mnt_function_names []
char * rquota_functions_names []

Detailed Description

Functions to be used for nfs and mount statistics.

Author:
Author:
deniel
Date:
Date:
2006/01/24 11:43:15
Version:
Revision:
1.6

nfs_stat.h : Functions to be used for nfs and mount statistics.

Definition in file nfs_stat.h.


Define Documentation

#define ERR_STAT_ERROR   1

Definition at line 73 of file nfs_stat.h.

#define ERR_STAT_NO_ERROR   0

Definition at line 72 of file nfs_stat.h.

#define MNT_V1_NB_COMMAND   6

Definition at line 62 of file nfs_stat.h.

#define MNT_V3_NB_COMMAND   6

Definition at line 63 of file nfs_stat.h.

#define NFS_V2_NB_COMMAND   18

Definition at line 53 of file nfs_stat.h.

#define NFS_V3_NB_COMMAND   22

Definition at line 56 of file nfs_stat.h.

#define NFS_V40_NB_OPERATION   39

Definition at line 69 of file nfs_stat.h.

#define NFS_V41_NB_OPERATION   58

Definition at line 70 of file nfs_stat.h.

#define NFS_V4_NB_COMMAND   2

Definition at line 59 of file nfs_stat.h.

#define NLM_V4_NB_OPERATION   5

Definition at line 81 of file nfs_stat.h.

#define RQUOTA_NB_COMMAND   5

Definition at line 66 of file nfs_stat.h.


Typedef Documentation


Enumeration Type Documentation

Enumerator:
PER_SERVER 
PER_SERVER_DETAIL 
PER_SHARE 
PER_SHARE_DETAIL 
PER_CLIENT 
PER_CLIENTSHARE 

Definition at line 137 of file nfs_stat.h.

Enumerator:
SVC_TIME 
AWAIT_TIME 

Definition at line 125 of file nfs_stat.h.

Enumerator:
GANESHA_STAT_SUCCESS 
GANESHA_STAT_DROP 

Definition at line 75 of file nfs_stat.h.


Function Documentation

void nfs_stat_update ( nfs_stat_type_t  type,
nfs_request_stat_t pstat_req,
struct svc_req *  preq,
nfs_request_latency_stat_t lstat_req 
)

nfs_stat_update: Update a client's statistics.

Update a client's statistics.

Parameters:
type[IN] type of the stat to dump
pclient[INOUT] client resource to be used
preq[IN] pointer to SVC request related to this call
Returns:
nothing (void function)

Definition at line 92 of file nfs_stat_mgmt.c.

void set_max_latency ( nfs_request_stat_item_t cur_stat,
unsigned int  val 
)

Definition at line 68 of file nfs_stats_thread.c.

void set_min_latency ( nfs_request_stat_item_t cur_stat,
unsigned int  val 
)

Definition at line 57 of file nfs_stats_thread.c.

struct timeval time_diff ( struct timeval  time_from,
struct timeval  time_to 
) [read]

Definition at line 476 of file nfs_worker_thread.c.


Variable Documentation

Definition at line 126 of file nfs_proto_tools.c.

Definition at line 105 of file nfs_proto_tools.c.

Definition at line 113 of file nfs_proto_tools.c.

Definition at line 122 of file nfs_proto_tools.c.

Definition at line 130 of file nfs_proto_tools.c.