• Home
  • Raw
  • Download

Lines Matching refs:uevent

262 	struct ucma_event *uevent;  in ucma_create_uevent()  local
264 uevent = kzalloc(sizeof(*uevent), GFP_KERNEL); in ucma_create_uevent()
265 if (!uevent) in ucma_create_uevent()
268 uevent->ctx = ctx; in ucma_create_uevent()
272 uevent->mc = (struct ucma_multicast *) in ucma_create_uevent()
274 uevent->resp.uid = uevent->mc->uid; in ucma_create_uevent()
275 uevent->resp.id = uevent->mc->id; in ucma_create_uevent()
278 uevent->resp.uid = ctx->uid; in ucma_create_uevent()
279 uevent->resp.id = ctx->id; in ucma_create_uevent()
282 uevent->resp.event = event->event; in ucma_create_uevent()
283 uevent->resp.status = event->status; in ucma_create_uevent()
285 ucma_copy_ud_event(ctx->cm_id->device, &uevent->resp.param.ud, in ucma_create_uevent()
288 ucma_copy_conn_event(&uevent->resp.param.conn, in ucma_create_uevent()
291 uevent->resp.ece.vendor_id = event->ece.vendor_id; in ucma_create_uevent()
292 uevent->resp.ece.attr_mod = event->ece.attr_mod; in ucma_create_uevent()
293 return uevent; in ucma_create_uevent()
301 struct ucma_event *uevent; in ucma_connect_event_handler() local
310 uevent = ucma_create_uevent(listen_ctx, event); in ucma_connect_event_handler()
311 if (!uevent) in ucma_connect_event_handler()
313 uevent->conn_req_ctx = ctx; in ucma_connect_event_handler()
314 uevent->resp.id = ctx->id; in ucma_connect_event_handler()
320 list_add_tail(&uevent->list, &ctx->file->event_list); in ucma_connect_event_handler()
336 struct ucma_event *uevent; in ucma_event_handler() local
350 uevent = ucma_create_uevent(ctx, event); in ucma_event_handler()
351 if (!uevent) in ucma_event_handler()
355 list_add_tail(&uevent->list, &ctx->file->event_list); in ucma_event_handler()
373 struct ucma_event *uevent; in ucma_get_event() local
379 if (out_len < sizeof(uevent->resp) - sizeof(uevent->resp.reserved) - in ucma_get_event()
380 sizeof(uevent->resp.ece)) in ucma_get_event()
400 uevent = list_first_entry(&file->event_list, struct ucma_event, list); in ucma_get_event()
403 &uevent->resp, in ucma_get_event()
404 min_t(size_t, out_len, sizeof(uevent->resp)))) { in ucma_get_event()
409 list_del(&uevent->list); in ucma_get_event()
410 uevent->ctx->events_reported++; in ucma_get_event()
411 if (uevent->mc) in ucma_get_event()
412 uevent->mc->events_reported++; in ucma_get_event()
413 if (uevent->resp.event == RDMA_CM_EVENT_CONNECT_REQUEST) in ucma_get_event()
414 atomic_inc(&uevent->ctx->backlog); in ucma_get_event()
417 kfree(uevent); in ucma_get_event()
507 struct ucma_event *uevent, *tmp; in ucma_cleanup_mc_events() local
511 list_for_each_entry_safe(uevent, tmp, &mc->ctx->file->event_list, list) { in ucma_cleanup_mc_events()
512 if (uevent->mc != mc) in ucma_cleanup_mc_events()
515 list_del(&uevent->list); in ucma_cleanup_mc_events()
516 kfree(uevent); in ucma_cleanup_mc_events()
525 struct ucma_event *uevent, *tmp; in ucma_cleanup_ctx_events() local
530 list_for_each_entry_safe(uevent, tmp, &ctx->file->event_list, list) { in ucma_cleanup_ctx_events()
531 if (uevent->ctx != ctx) in ucma_cleanup_ctx_events()
534 if (uevent->resp.event == RDMA_CM_EVENT_CONNECT_REQUEST && in ucma_cleanup_ctx_events()
535 xa_cmpxchg(&ctx_table, uevent->conn_req_ctx->id, in ucma_cleanup_ctx_events()
536 uevent->conn_req_ctx, XA_ZERO_ENTRY, in ucma_cleanup_ctx_events()
537 GFP_KERNEL) == uevent->conn_req_ctx) { in ucma_cleanup_ctx_events()
538 list_move_tail(&uevent->list, &list); in ucma_cleanup_ctx_events()
541 list_del(&uevent->list); in ucma_cleanup_ctx_events()
542 kfree(uevent); in ucma_cleanup_ctx_events()
553 list_for_each_entry_safe(uevent, tmp, &list, list) { in ucma_cleanup_ctx_events()
554 ucma_destroy_private_ctx(uevent->conn_req_ctx); in ucma_cleanup_ctx_events()
555 kfree(uevent); in ucma_cleanup_ctx_events()
1616 struct ucma_event *uevent, *tmp; in ucma_migrate_id() local
1664 list_for_each_entry_safe(uevent, tmp, &cur_file->event_list, list) in ucma_migrate_id()
1665 if (uevent->ctx == ctx) in ucma_migrate_id()
1666 list_move_tail(&uevent->list, &event_list); in ucma_migrate_id()