Lines Matching refs:cm_dev

161 	struct cm_device *cm_dev;  member
255 struct cm_device *cm_dev = container_of(kref, struct cm_device, kref); in cm_dev_release() local
258 rdma_for_each_port(cm_dev->ib_device, i) in cm_dev_release()
259 kfree(cm_dev->port[i - 1]); in cm_dev_release()
261 kfree(cm_dev); in cm_dev_release()
264 static void cm_device_put(struct cm_device *cm_dev) in cm_device_put() argument
266 kref_put(&cm_dev->kref, cm_dev_release); in cm_device_put()
289 read_lock(&cm_id_priv->av.port->cm_dev->mad_agent_lock); in cm_alloc_msg_agent()
316 read_unlock(&cm_id_priv->av.port->cm_dev->mad_agent_lock); in cm_alloc_msg_agent()
462 cm_device_put(old_port->cm_dev); in cm_set_av_port()
464 kref_get(&port->cm_dev->kref); in cm_set_av_port()
480 return ib_init_ah_attr_from_wc(port->cm_dev->ib_device, in cm_init_av_for_response()
488 struct cm_device *cm_dev; in get_cm_port_from_path() local
494 list_for_each_entry(cm_dev, &cm.device_list, list) { in get_cm_port_from_path()
495 if (cm_dev->ib_device == attr->device) { in get_cm_port_from_path()
496 port = cm_dev->port[attr->port_num - 1]; in get_cm_port_from_path()
509 list_for_each_entry(cm_dev, &cm.device_list, list) { in get_cm_port_from_path()
510 attr = rdma_find_gid(cm_dev->ib_device, in get_cm_port_from_path()
515 port = cm_dev->port[attr->port_num - 1]; in get_cm_port_from_path()
531 struct cm_device *cm_dev; in cm_init_av_by_path() local
538 cm_dev = port->cm_dev; in cm_init_av_by_path()
540 ret = ib_find_cached_pkey(cm_dev->ib_device, port->port_num, in cm_init_av_by_path()
556 ret = ib_init_ah_attr_from_path(cm_dev->ib_device, port->port_num, path, in cm_init_av_by_path()
993 struct cm_device *cm_dev; in cm_enter_timewait() local
997 cm_dev = ib_get_client_data(cm_id_priv->id.device, &cm_client); in cm_enter_timewait()
998 if (!cm_dev) in cm_enter_timewait()
1016 if (!cm_dev->going_down) in cm_enter_timewait()
1314 read_lock(&cm_id_priv->av.port->cm_dev->mad_agent_lock); in cm_form_tid()
1317 read_unlock(&cm_id_priv->av.port->cm_dev->mad_agent_lock); in cm_form_tid()
1428 cm_ack_timeout(cm_id_priv->av.port->cm_dev->ack_delay, in cm_format_req()
1480 cm_ack_timeout(cm_id_priv->av.port->cm_dev->ack_delay, in cm_format_req()
1773 struct ib_device *ib_dev = work->port->cm_dev->ib_device; in cm_get_bth_pkey()
1801 struct ib_device *dev = work->port->cm_dev->ib_device; in cm_opa_to_ib_sgid()
2105 cm_alloc_id_priv(work->port->cm_dev->ib_device, NULL, NULL); in cm_req_handler()
2173 work->port->cm_dev->ib_device, work->port->port_num, in cm_req_handler()
2193 err = rdma_query_gid(work->port->cm_dev->ib_device, in cm_req_handler()
2263 cm_id_priv->av.port->cm_dev->ack_delay); in cm_format_rep()
3297 if (rdma_protocol_roce(work->port->cm_dev->ib_device, in cm_lap_handler()
3311 cm_path_set_rec_type(work->port->cm_dev->ib_device, in cm_lap_handler()
3320 ret = ib_init_ah_attr_from_wc(work->port->cm_dev->ib_device, in cm_lap_handler()
3390 if (rdma_protocol_roce(work->port->cm_dev->ib_device, in cm_apr_handler()
3554 cm_alloc_id_priv(work->port->cm_dev->ib_device, NULL, NULL); in cm_sidr_req_handler()
3899 struct cm_device *cm_dev; in cm_establish() local
3901 cm_dev = ib_get_client_data(cm_id->device, &cm_client); in cm_establish()
3902 if (!cm_dev) in cm_establish()
3945 if (!cm_dev->going_down) { in cm_establish()
4066 if (!port->cm_dev->going_down) in cm_recv_handler()
4271 struct cm_device *cm_dev = ib_get_client_data(ibdev, &cm_client); in cm_show_counter() local
4273 if (WARN_ON(!cm_dev)) in cm_show_counter()
4279 &cm_dev->port[port_num - 1] in cm_show_counter()
4337 struct cm_device *cm_dev; in cm_add_one() local
4351 cm_dev = kzalloc_flex(*cm_dev, port, ib_device->phys_port_cnt); in cm_add_one()
4352 if (!cm_dev) in cm_add_one()
4355 kref_init(&cm_dev->kref); in cm_add_one()
4356 rwlock_init(&cm_dev->mad_agent_lock); in cm_add_one()
4357 cm_dev->ib_device = ib_device; in cm_add_one()
4358 cm_dev->ack_delay = ib_device->attrs.local_ca_ack_delay; in cm_add_one()
4359 cm_dev->going_down = 0; in cm_add_one()
4361 ib_set_client_data(ib_device, &cm_client, cm_dev); in cm_add_one()
4374 cm_dev->port[i-1] = port; in cm_add_one()
4375 port->cm_dev = cm_dev; in cm_add_one()
4422 list_add_tail(&cm_dev->list, &cm.device_list); in cm_add_one()
4439 port = cm_dev->port[i-1]; in cm_add_one()
4447 cm_device_put(cm_dev); in cm_add_one()
4453 struct cm_device *cm_dev = client_data; in cm_remove_one() local
4462 list_del(&cm_dev->list); in cm_remove_one()
4466 cm_dev->going_down = 1; in cm_remove_one()
4476 port = cm_dev->port[i-1]; in cm_remove_one()
4490 write_lock(&cm_dev->mad_agent_lock); in cm_remove_one()
4493 write_unlock(&cm_dev->mad_agent_lock); in cm_remove_one()
4500 cm_device_put(cm_dev); in cm_remove_one()