|
11 | 11 | #define _CIFS_TRACE_H
|
12 | 12 |
|
13 | 13 | #include <linux/tracepoint.h>
|
| 14 | +#include <linux/net.h> |
| 15 | +#include <linux/inet.h> |
14 | 16 |
|
15 | 17 | /*
|
16 | 18 | * Please use this 3-part article as a reference for writing new tracepoints:
|
@@ -854,6 +856,75 @@ DEFINE_EVENT(smb3_lease_err_class, smb3_##name, \
|
854 | 856 |
|
855 | 857 | DEFINE_SMB3_LEASE_ERR_EVENT(lease_err);
|
856 | 858 |
|
| 859 | +DECLARE_EVENT_CLASS(smb3_connect_class, |
| 860 | + TP_PROTO(char *hostname, |
| 861 | + __u64 conn_id, |
| 862 | + const struct __kernel_sockaddr_storage *dst_addr), |
| 863 | + TP_ARGS(hostname, conn_id, dst_addr), |
| 864 | + TP_STRUCT__entry( |
| 865 | + __string(hostname, hostname) |
| 866 | + __field(__u64, conn_id) |
| 867 | + __array(__u8, dst_addr, sizeof(struct sockaddr_storage)) |
| 868 | + ), |
| 869 | + TP_fast_assign( |
| 870 | + struct sockaddr_storage *pss = NULL; |
| 871 | + |
| 872 | + __entry->conn_id = conn_id; |
| 873 | + pss = (struct sockaddr_storage *)__entry->dst_addr; |
| 874 | + *pss = *dst_addr; |
| 875 | + __assign_str(hostname, hostname); |
| 876 | + ), |
| 877 | + TP_printk("conn_id=0x%llx server=%s addr=%pISpsfc", |
| 878 | + __entry->conn_id, |
| 879 | + __get_str(hostname), |
| 880 | + __entry->dst_addr) |
| 881 | +) |
| 882 | + |
| 883 | +#define DEFINE_SMB3_CONNECT_EVENT(name) \ |
| 884 | +DEFINE_EVENT(smb3_connect_class, smb3_##name, \ |
| 885 | + TP_PROTO(char *hostname, \ |
| 886 | + __u64 conn_id, \ |
| 887 | + const struct __kernel_sockaddr_storage *addr), \ |
| 888 | + TP_ARGS(hostname, conn_id, addr)) |
| 889 | + |
| 890 | +DEFINE_SMB3_CONNECT_EVENT(connect_done); |
| 891 | + |
| 892 | +DECLARE_EVENT_CLASS(smb3_connect_err_class, |
| 893 | + TP_PROTO(char *hostname, __u64 conn_id, |
| 894 | + const struct __kernel_sockaddr_storage *dst_addr, int rc), |
| 895 | + TP_ARGS(hostname, conn_id, dst_addr, rc), |
| 896 | + TP_STRUCT__entry( |
| 897 | + __string(hostname, hostname) |
| 898 | + __field(__u64, conn_id) |
| 899 | + __array(__u8, dst_addr, sizeof(struct sockaddr_storage)) |
| 900 | + __field(int, rc) |
| 901 | + ), |
| 902 | + TP_fast_assign( |
| 903 | + struct sockaddr_storage *pss = NULL; |
| 904 | + |
| 905 | + __entry->conn_id = conn_id; |
| 906 | + __entry->rc = rc; |
| 907 | + pss = (struct sockaddr_storage *)__entry->dst_addr; |
| 908 | + *pss = *dst_addr; |
| 909 | + __assign_str(hostname, hostname); |
| 910 | + ), |
| 911 | + TP_printk("rc=%d conn_id=0x%llx server=%s addr=%pISpsfc", |
| 912 | + __entry->rc, |
| 913 | + __entry->conn_id, |
| 914 | + __get_str(hostname), |
| 915 | + __entry->dst_addr) |
| 916 | +) |
| 917 | + |
| 918 | +#define DEFINE_SMB3_CONNECT_ERR_EVENT(name) \ |
| 919 | +DEFINE_EVENT(smb3_connect_err_class, smb3_##name, \ |
| 920 | + TP_PROTO(char *hostname, \ |
| 921 | + __u64 conn_id, \ |
| 922 | + const struct __kernel_sockaddr_storage *addr, \ |
| 923 | + int rc), \ |
| 924 | + TP_ARGS(hostname, conn_id, addr, rc)) |
| 925 | + |
| 926 | +DEFINE_SMB3_CONNECT_ERR_EVENT(connect_err); |
| 927 | + |
857 | 928 | DECLARE_EVENT_CLASS(smb3_reconnect_class,
|
858 | 929 | TP_PROTO(__u64 currmid,
|
859 | 930 | __u64 conn_id,
|
|
0 commit comments