smb3: remove per-session operations from per-tree connection stats
Remove counters from the per-tree connection /proc/fs/cifs/Stats output that will always be zero (since they are not per-tcon ops) ie SMB3 Negotiate, SessionSetup, Logoff, Echo, Cancel. Also clarify "sent" to be "total" per-Pavel's suggestion (since this "total" includes total for all operations that we try to send whether or not succesffully sent). Sample output below: Resources in use CIFS Session: 1 Share (unique mount targets): 2 SMB Request/Response Buffer: 1 Pool size: 5 SMB Small Req/Resp Buffer: 1 Pool size: 30 Operations (MIDs): 0 1 session 2 share reconnects Total vfs operations: 23 maximum at one time: 2 1) \\localhost\test SMBs: 45 TreeConnects: 2 total 0 failed TreeDisconnects: 0 total 0 failed Creates: 13 total 2 failed Closes: 9 total 0 failed Flushes: 0 total 0 failed Reads: 0 total 0 failed Writes: 1 total 0 failed Locks: 0 total 0 failed IOCTLs: 3 total 1 failed QueryDirectories: 4 total 2 failed ChangeNotifies: 0 total 0 failed QueryInfos: 10 total 0 failed SetInfos: 3 total 0 failed OplockBreaks: 0 sent 0 failed Signed-off-by: Steve French <stfrench@microsoft.com> Reviewed-by: Pavel Shilovsky <pshilov@microsoft.com>
This commit is contained in:
parent
289131e1f1
commit
1995d28f84
@ -927,58 +927,48 @@ smb2_print_stats(struct seq_file *m, struct cifs_tcon *tcon)
|
||||
#ifdef CONFIG_CIFS_STATS
|
||||
atomic_t *sent = tcon->stats.smb2_stats.smb2_com_sent;
|
||||
atomic_t *failed = tcon->stats.smb2_stats.smb2_com_failed;
|
||||
seq_printf(m, "\nNegotiates: %d sent %d failed",
|
||||
atomic_read(&sent[SMB2_NEGOTIATE_HE]),
|
||||
atomic_read(&failed[SMB2_NEGOTIATE_HE]));
|
||||
seq_printf(m, "\nSessionSetups: %d sent %d failed",
|
||||
atomic_read(&sent[SMB2_SESSION_SETUP_HE]),
|
||||
atomic_read(&failed[SMB2_SESSION_SETUP_HE]));
|
||||
seq_printf(m, "\nLogoffs: %d sent %d failed",
|
||||
atomic_read(&sent[SMB2_LOGOFF_HE]),
|
||||
atomic_read(&failed[SMB2_LOGOFF_HE]));
|
||||
seq_printf(m, "\nTreeConnects: %d sent %d failed",
|
||||
|
||||
/*
|
||||
* Can't display SMB2_NEGOTIATE, SESSION_SETUP, LOGOFF, CANCEL and ECHO
|
||||
* totals (requests sent) since those SMBs are per-session not per tcon
|
||||
*/
|
||||
seq_printf(m, "\nTreeConnects: %d total %d failed",
|
||||
atomic_read(&sent[SMB2_TREE_CONNECT_HE]),
|
||||
atomic_read(&failed[SMB2_TREE_CONNECT_HE]));
|
||||
seq_printf(m, "\nTreeDisconnects: %d sent %d failed",
|
||||
seq_printf(m, "\nTreeDisconnects: %d total %d failed",
|
||||
atomic_read(&sent[SMB2_TREE_DISCONNECT_HE]),
|
||||
atomic_read(&failed[SMB2_TREE_DISCONNECT_HE]));
|
||||
seq_printf(m, "\nCreates: %d sent %d failed",
|
||||
seq_printf(m, "\nCreates: %d total %d failed",
|
||||
atomic_read(&sent[SMB2_CREATE_HE]),
|
||||
atomic_read(&failed[SMB2_CREATE_HE]));
|
||||
seq_printf(m, "\nCloses: %d sent %d failed",
|
||||
seq_printf(m, "\nCloses: %d total %d failed",
|
||||
atomic_read(&sent[SMB2_CLOSE_HE]),
|
||||
atomic_read(&failed[SMB2_CLOSE_HE]));
|
||||
seq_printf(m, "\nFlushes: %d sent %d failed",
|
||||
seq_printf(m, "\nFlushes: %d total %d failed",
|
||||
atomic_read(&sent[SMB2_FLUSH_HE]),
|
||||
atomic_read(&failed[SMB2_FLUSH_HE]));
|
||||
seq_printf(m, "\nReads: %d sent %d failed",
|
||||
seq_printf(m, "\nReads: %d total %d failed",
|
||||
atomic_read(&sent[SMB2_READ_HE]),
|
||||
atomic_read(&failed[SMB2_READ_HE]));
|
||||
seq_printf(m, "\nWrites: %d sent %d failed",
|
||||
seq_printf(m, "\nWrites: %d total %d failed",
|
||||
atomic_read(&sent[SMB2_WRITE_HE]),
|
||||
atomic_read(&failed[SMB2_WRITE_HE]));
|
||||
seq_printf(m, "\nLocks: %d sent %d failed",
|
||||
seq_printf(m, "\nLocks: %d total %d failed",
|
||||
atomic_read(&sent[SMB2_LOCK_HE]),
|
||||
atomic_read(&failed[SMB2_LOCK_HE]));
|
||||
seq_printf(m, "\nIOCTLs: %d sent %d failed",
|
||||
seq_printf(m, "\nIOCTLs: %d total %d failed",
|
||||
atomic_read(&sent[SMB2_IOCTL_HE]),
|
||||
atomic_read(&failed[SMB2_IOCTL_HE]));
|
||||
seq_printf(m, "\nCancels: %d sent %d failed",
|
||||
atomic_read(&sent[SMB2_CANCEL_HE]),
|
||||
atomic_read(&failed[SMB2_CANCEL_HE]));
|
||||
seq_printf(m, "\nEchos: %d sent %d failed",
|
||||
atomic_read(&sent[SMB2_ECHO_HE]),
|
||||
atomic_read(&failed[SMB2_ECHO_HE]));
|
||||
seq_printf(m, "\nQueryDirectories: %d sent %d failed",
|
||||
seq_printf(m, "\nQueryDirectories: %d total %d failed",
|
||||
atomic_read(&sent[SMB2_QUERY_DIRECTORY_HE]),
|
||||
atomic_read(&failed[SMB2_QUERY_DIRECTORY_HE]));
|
||||
seq_printf(m, "\nChangeNotifies: %d sent %d failed",
|
||||
seq_printf(m, "\nChangeNotifies: %d total %d failed",
|
||||
atomic_read(&sent[SMB2_CHANGE_NOTIFY_HE]),
|
||||
atomic_read(&failed[SMB2_CHANGE_NOTIFY_HE]));
|
||||
seq_printf(m, "\nQueryInfos: %d sent %d failed",
|
||||
seq_printf(m, "\nQueryInfos: %d total %d failed",
|
||||
atomic_read(&sent[SMB2_QUERY_INFO_HE]),
|
||||
atomic_read(&failed[SMB2_QUERY_INFO_HE]));
|
||||
seq_printf(m, "\nSetInfos: %d sent %d failed",
|
||||
seq_printf(m, "\nSetInfos: %d total %d failed",
|
||||
atomic_read(&sent[SMB2_SET_INFO_HE]),
|
||||
atomic_read(&failed[SMB2_SET_INFO_HE]));
|
||||
seq_printf(m, "\nOplockBreaks: %d sent %d failed",
|
||||
|
Loading…
Reference in New Issue
Block a user