@@ -237,62 +237,56 @@ static void handle_connect_req(struct rdma_cm_id *new_cma_id,
237
237
svc_xprt_enqueue (& listen_xprt -> sc_xprt );
238
238
}
239
239
240
- /*
241
- * Handles events generated on the listening endpoint. These events will be
242
- * either be incoming connect requests or adapter removal events.
240
+ /**
241
+ * svc_rdma_listen_handler - Handle CM events generated on a listening endpoint
242
+ * @cma_id: the server's listener rdma_cm_id
243
+ * @event: details of the event
244
+ *
245
+ * Return values:
246
+ * %0: Do not destroy @cma_id
247
+ * %1: Destroy @cma_id (never returned here)
248
+ *
249
+ * NB: There is never a DEVICE_REMOVAL event for INADDR_ANY listeners.
243
250
*/
244
- static int rdma_listen_handler (struct rdma_cm_id * cma_id ,
245
- struct rdma_cm_event * event )
251
+ static int svc_rdma_listen_handler (struct rdma_cm_id * cma_id ,
252
+ struct rdma_cm_event * event )
246
253
{
247
254
switch (event -> event ) {
248
255
case RDMA_CM_EVENT_CONNECT_REQUEST :
249
- dprintk ("svcrdma: Connect request on cma_id=%p, xprt = %p, "
250
- "event = %s (%d)\n" , cma_id , cma_id -> context ,
251
- rdma_event_msg (event -> event ), event -> event );
252
256
handle_connect_req (cma_id , & event -> param .conn );
253
257
break ;
254
258
default :
255
- /* NB: No device removal upcall for INADDR_ANY listeners */
256
- dprintk ("svcrdma: Unexpected event on listening endpoint %p, "
257
- "event = %s (%d)\n" , cma_id ,
258
- rdma_event_msg (event -> event ), event -> event );
259
259
break ;
260
260
}
261
-
262
261
return 0 ;
263
262
}
264
263
265
- static int rdma_cma_handler (struct rdma_cm_id * cma_id ,
266
- struct rdma_cm_event * event )
264
+ /**
265
+ * svc_rdma_cma_handler - Handle CM events on client connections
266
+ * @cma_id: the server's listener rdma_cm_id
267
+ * @event: details of the event
268
+ *
269
+ * Return values:
270
+ * %0: Do not destroy @cma_id
271
+ * %1: Destroy @cma_id (never returned here)
272
+ */
273
+ static int svc_rdma_cma_handler (struct rdma_cm_id * cma_id ,
274
+ struct rdma_cm_event * event )
267
275
{
268
276
struct svcxprt_rdma * rdma = cma_id -> context ;
269
277
struct svc_xprt * xprt = & rdma -> sc_xprt ;
270
278
271
279
switch (event -> event ) {
272
280
case RDMA_CM_EVENT_ESTABLISHED :
273
- /* Accept complete */
274
- dprintk ("svcrdma: Connection completed on DTO xprt=%p, "
275
- "cm_id=%p\n" , xprt , cma_id );
276
281
clear_bit (RDMAXPRT_CONN_PENDING , & rdma -> sc_flags );
277
282
svc_xprt_enqueue (xprt );
278
283
break ;
279
284
case RDMA_CM_EVENT_DISCONNECTED :
280
- dprintk ("svcrdma: Disconnect on DTO xprt=%p, cm_id=%p\n" ,
281
- xprt , cma_id );
282
- set_bit (XPT_CLOSE , & xprt -> xpt_flags );
283
- svc_xprt_enqueue (xprt );
284
- break ;
285
285
case RDMA_CM_EVENT_DEVICE_REMOVAL :
286
- dprintk ("svcrdma: Device removal cma_id=%p, xprt = %p, "
287
- "event = %s (%d)\n" , cma_id , xprt ,
288
- rdma_event_msg (event -> event ), event -> event );
289
286
set_bit (XPT_CLOSE , & xprt -> xpt_flags );
290
287
svc_xprt_enqueue (xprt );
291
288
break ;
292
289
default :
293
- dprintk ("svcrdma: Unexpected event on DTO endpoint %p, "
294
- "event = %s (%d)\n" , cma_id ,
295
- rdma_event_msg (event -> event ), event -> event );
296
290
break ;
297
291
}
298
292
return 0 ;
@@ -318,7 +312,7 @@ static struct svc_xprt *svc_rdma_create(struct svc_serv *serv,
318
312
set_bit (XPT_LISTENER , & cma_xprt -> sc_xprt .xpt_flags );
319
313
strcpy (cma_xprt -> sc_xprt .xpt_remotebuf , "listener" );
320
314
321
- listen_id = rdma_create_id (net , rdma_listen_handler , cma_xprt ,
315
+ listen_id = rdma_create_id (net , svc_rdma_listen_handler , cma_xprt ,
322
316
RDMA_PS_TCP , IB_QPT_RC );
323
317
if (IS_ERR (listen_id )) {
324
318
ret = PTR_ERR (listen_id );
@@ -482,7 +476,7 @@ static struct svc_xprt *svc_rdma_accept(struct svc_xprt *xprt)
482
476
goto errout ;
483
477
484
478
/* Swap out the handler */
485
- newxprt -> sc_cm_id -> event_handler = rdma_cma_handler ;
479
+ newxprt -> sc_cm_id -> event_handler = svc_rdma_cma_handler ;
486
480
487
481
/* Construct RDMA-CM private message */
488
482
pmsg .cp_magic = rpcrdma_cmp_magic ;
0 commit comments