Skip to content

Commit 8f39fce

Browse files
committed
Merge tag 'nfs-rdma-for-4.16-1' of git://git.linux-nfs.org/projects/anna/linux-nfs
NFS-over-RDMA client updates for Linux 4.16 New features: - xprtrdma tracepoints Bugfixes and cleanups: - Fix memory leak if rpcrdma_buffer_create() fails - Fix allocating extra rpcrdma_reps for the backchannel - Remove various unused and redundant variables and lock cycles - Fix IPv6 support in xprt_rdma_set_port() - Fix memory leak by calling buf_free for callback replies - Fix "bytes registered" accounting - Fix kernel-doc comments - SUNRPC tracepoint cleanups for consistent information - Optimizations for __rpc_execute()
2 parents 0be283f + 21ead9f commit 8f39fce

File tree

14 files changed

+1662
-657
lines changed

14 files changed

+1662
-657
lines changed

include/linux/sunrpc/xprtrdma.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ enum rpcrdma_memreg {
6464
RPCRDMA_MEMWINDOWS,
6565
RPCRDMA_MEMWINDOWS_ASYNC,
6666
RPCRDMA_MTHCAFMR,
67-
RPCRDMA_FRMR,
67+
RPCRDMA_FRWR,
6868
RPCRDMA_ALLPHYSICAL,
6969
RPCRDMA_LAST
7070
};

include/trace/events/rdma.h

Lines changed: 129 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,129 @@
1+
/* SPDX-License-Identifier: GPL-2.0 */
2+
/*
3+
* Copyright (c) 2017 Oracle. All rights reserved.
4+
*/
5+
6+
/*
7+
* enum ib_event_type, from include/rdma/ib_verbs.h
8+
*/
9+
10+
#define IB_EVENT_LIST \
11+
ib_event(CQ_ERR) \
12+
ib_event(QP_FATAL) \
13+
ib_event(QP_REQ_ERR) \
14+
ib_event(QP_ACCESS_ERR) \
15+
ib_event(COMM_EST) \
16+
ib_event(SQ_DRAINED) \
17+
ib_event(PATH_MIG) \
18+
ib_event(PATH_MIG_ERR) \
19+
ib_event(DEVICE_FATAL) \
20+
ib_event(PORT_ACTIVE) \
21+
ib_event(PORT_ERR) \
22+
ib_event(LID_CHANGE) \
23+
ib_event(PKEY_CHANGE) \
24+
ib_event(SM_CHANGE) \
25+
ib_event(SRQ_ERR) \
26+
ib_event(SRQ_LIMIT_REACHED) \
27+
ib_event(QP_LAST_WQE_REACHED) \
28+
ib_event(CLIENT_REREGISTER) \
29+
ib_event(GID_CHANGE) \
30+
ib_event_end(WQ_FATAL)
31+
32+
#undef ib_event
33+
#undef ib_event_end
34+
35+
#define ib_event(x) TRACE_DEFINE_ENUM(IB_EVENT_##x);
36+
#define ib_event_end(x) TRACE_DEFINE_ENUM(IB_EVENT_##x);
37+
38+
IB_EVENT_LIST
39+
40+
#undef ib_event
41+
#undef ib_event_end
42+
43+
#define ib_event(x) { IB_EVENT_##x, #x },
44+
#define ib_event_end(x) { IB_EVENT_##x, #x }
45+
46+
#define rdma_show_ib_event(x) \
47+
__print_symbolic(x, IB_EVENT_LIST)
48+
49+
/*
50+
* enum ib_wc_status type, from include/rdma/ib_verbs.h
51+
*/
52+
#define IB_WC_STATUS_LIST \
53+
ib_wc_status(SUCCESS) \
54+
ib_wc_status(LOC_LEN_ERR) \
55+
ib_wc_status(LOC_QP_OP_ERR) \
56+
ib_wc_status(LOC_EEC_OP_ERR) \
57+
ib_wc_status(LOC_PROT_ERR) \
58+
ib_wc_status(WR_FLUSH_ERR) \
59+
ib_wc_status(MW_BIND_ERR) \
60+
ib_wc_status(BAD_RESP_ERR) \
61+
ib_wc_status(LOC_ACCESS_ERR) \
62+
ib_wc_status(REM_INV_REQ_ERR) \
63+
ib_wc_status(REM_ACCESS_ERR) \
64+
ib_wc_status(REM_OP_ERR) \
65+
ib_wc_status(RETRY_EXC_ERR) \
66+
ib_wc_status(RNR_RETRY_EXC_ERR) \
67+
ib_wc_status(LOC_RDD_VIOL_ERR) \
68+
ib_wc_status(REM_INV_RD_REQ_ERR) \
69+
ib_wc_status(REM_ABORT_ERR) \
70+
ib_wc_status(INV_EECN_ERR) \
71+
ib_wc_status(INV_EEC_STATE_ERR) \
72+
ib_wc_status(FATAL_ERR) \
73+
ib_wc_status(RESP_TIMEOUT_ERR) \
74+
ib_wc_status_end(GENERAL_ERR)
75+
76+
#undef ib_wc_status
77+
#undef ib_wc_status_end
78+
79+
#define ib_wc_status(x) TRACE_DEFINE_ENUM(IB_WC_##x);
80+
#define ib_wc_status_end(x) TRACE_DEFINE_ENUM(IB_WC_##x);
81+
82+
IB_WC_STATUS_LIST
83+
84+
#undef ib_wc_status
85+
#undef ib_wc_status_end
86+
87+
#define ib_wc_status(x) { IB_WC_##x, #x },
88+
#define ib_wc_status_end(x) { IB_WC_##x, #x }
89+
90+
#define rdma_show_wc_status(x) \
91+
__print_symbolic(x, IB_WC_STATUS_LIST)
92+
93+
/*
94+
* enum rdma_cm_event_type, from include/rdma/rdma_cm.h
95+
*/
96+
#define RDMA_CM_EVENT_LIST \
97+
rdma_cm_event(ADDR_RESOLVED) \
98+
rdma_cm_event(ADDR_ERROR) \
99+
rdma_cm_event(ROUTE_RESOLVED) \
100+
rdma_cm_event(ROUTE_ERROR) \
101+
rdma_cm_event(CONNECT_REQUEST) \
102+
rdma_cm_event(CONNECT_RESPONSE) \
103+
rdma_cm_event(CONNECT_ERROR) \
104+
rdma_cm_event(UNREACHABLE) \
105+
rdma_cm_event(REJECTED) \
106+
rdma_cm_event(ESTABLISHED) \
107+
rdma_cm_event(DISCONNECTED) \
108+
rdma_cm_event(DEVICE_REMOVAL) \
109+
rdma_cm_event(MULTICAST_JOIN) \
110+
rdma_cm_event(MULTICAST_ERROR) \
111+
rdma_cm_event(ADDR_CHANGE) \
112+
rdma_cm_event_end(TIMEWAIT_EXIT)
113+
114+
#undef rdma_cm_event
115+
#undef rdma_cm_event_end
116+
117+
#define rdma_cm_event(x) TRACE_DEFINE_ENUM(RDMA_CM_EVENT_##x);
118+
#define rdma_cm_event_end(x) TRACE_DEFINE_ENUM(RDMA_CM_EVENT_##x);
119+
120+
RDMA_CM_EVENT_LIST
121+
122+
#undef rdma_cm_event
123+
#undef rdma_cm_event_end
124+
125+
#define rdma_cm_event(x) { RDMA_CM_EVENT_##x, #x },
126+
#define rdma_cm_event_end(x) { RDMA_CM_EVENT_##x, #x }
127+
128+
#define rdma_show_cm_event(x) \
129+
__print_symbolic(x, RDMA_CM_EVENT_LIST)

0 commit comments

Comments
 (0)