]> granicus.if.org Git - sysstat/blob - cifsiostat.h
mpstat: Display CPU statistics in plain or JSON format
[sysstat] / cifsiostat.h
1 /*
2  * cifsiostat: Report CIFS statistics
3  * Copyright (C) 2010 Red Hat, Inc. All Rights Reserved
4  * Written by Ivana Varekova <varekova@redhat.com>
5  */
6
7 #ifndef _CIFSIOSTAT_H
8 #define _CIFSIOSTAT_H
9
10 #include "common.h"
11
12 #define CIFSSTATS  "/proc/fs/cifs/Stats"
13
14 /* I_: iostat - D_: Display - F_: Flag */
15 #define I_D_TIMESTAMP           0x001
16 #define I_D_KILOBYTES           0x002
17 #define I_D_MEGABYTES           0x004
18 #define I_D_ISO                 0x008
19 #define I_D_HUMAN_READ          0x010
20 #define I_D_DEBUG               0x020
21
22 #define DISPLAY_TIMESTAMP(m)    (((m) & I_D_TIMESTAMP)     == I_D_TIMESTAMP)
23 #define DISPLAY_KILOBYTES(m)    (((m) & I_D_KILOBYTES)     == I_D_KILOBYTES)
24 #define DISPLAY_MEGABYTES(m)    (((m) & I_D_MEGABYTES)     == I_D_MEGABYTES)
25 #define DISPLAY_ISO(m)          (((m) & I_D_ISO)           == I_D_ISO)
26 #define DISPLAY_HUMAN_READ(m)   (((m) & I_D_HUMAN_READ)    == I_D_HUMAN_READ)
27 #define DISPLAY_DEBUG(m)        (((m) & I_D_DEBUG)         == I_D_DEBUG)
28
29 /* Preallocation constants */
30 #define NR_CIFS_PREALLOC        2
31
32 struct cifs_stats {
33         unsigned long long rd_bytes     __attribute__ ((aligned (8)));
34         unsigned long long wr_bytes     __attribute__ ((packed));
35         unsigned long long rd_ops       __attribute__ ((packed));
36         unsigned long long wr_ops       __attribute__ ((packed));
37         unsigned long long fopens       __attribute__ ((packed));
38         unsigned long long fcloses      __attribute__ ((packed));
39         unsigned long long fdeletes     __attribute__ ((packed));
40 };
41
42 #define CIFS_STATS_SIZE (sizeof(struct cifs_stats))
43
44 struct io_hdr_stats {
45         unsigned int active             __attribute__ ((aligned (4)));
46         unsigned int used               __attribute__ ((packed));
47         char name[MAX_NAME_LEN];
48 };
49
50 #define IO_HDR_STATS_SIZE       (sizeof(struct io_hdr_stats))
51
52 #endif  /* _CIFSIOSTAT_H */