aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs/flexfilelayout/flexfilelayout.h
diff options
context:
space:
mode:
Diffstat (limited to 'fs/nfs/flexfilelayout/flexfilelayout.h')
-rw-r--r--fs/nfs/flexfilelayout/flexfilelayout.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/fs/nfs/flexfilelayout/flexfilelayout.h b/fs/nfs/flexfilelayout/flexfilelayout.h
index 275e4b735247..f7493f7cf13c 100644
--- a/fs/nfs/flexfilelayout/flexfilelayout.h
+++ b/fs/nfs/flexfilelayout/flexfilelayout.h
@@ -41,6 +41,26 @@ struct nfs4_ff_layout_ds_err {
41 struct nfs4_deviceid deviceid; 41 struct nfs4_deviceid deviceid;
42}; 42};
43 43
44struct nfs4_ff_io_stat {
45 __u64 ops_requested;
46 __u64 bytes_requested;
47 __u64 ops_completed;
48 __u64 bytes_completed;
49 __u64 bytes_not_delivered;
50 ktime_t total_busy_time;
51 ktime_t aggregate_completion_time;
52};
53
54struct nfs4_ff_busy_timer {
55 ktime_t start_time;
56 atomic_t n_ops;
57};
58
59struct nfs4_ff_layoutstat {
60 struct nfs4_ff_io_stat io_stat;
61 struct nfs4_ff_busy_timer busy_timer;
62};
63
44struct nfs4_ff_layout_mirror { 64struct nfs4_ff_layout_mirror {
45 u32 ds_count; 65 u32 ds_count;
46 u32 efficiency; 66 u32 efficiency;
@@ -52,6 +72,8 @@ struct nfs4_ff_layout_mirror {
52 u32 gid; 72 u32 gid;
53 struct rpc_cred *cred; 73 struct rpc_cred *cred;
54 spinlock_t lock; 74 spinlock_t lock;
75 struct nfs4_ff_layoutstat read_stat;
76 struct nfs4_ff_layoutstat write_stat;
55}; 77};
56 78
57struct nfs4_ff_layout_segment { 79struct nfs4_ff_layout_segment {