Lines Matching refs:cm_dev
159 struct cm_device *cm_dev; member
252 struct cm_device *cm_dev = container_of(kref, struct cm_device, kref); in cm_dev_release() local
255 rdma_for_each_port(cm_dev->ib_device, i) in cm_dev_release()
256 kfree(cm_dev->port[i - 1]); in cm_dev_release()
258 kfree(cm_dev); in cm_dev_release()
261 static void cm_device_put(struct cm_device *cm_dev) in cm_device_put() argument
263 kref_put(&cm_dev->kref, cm_dev_release); in cm_device_put()
285 spin_lock(&cm_id_priv->av.port->cm_dev->mad_agent_lock); in cm_alloc_msg()
316 spin_unlock(&cm_id_priv->av.port->cm_dev->mad_agent_lock); in cm_alloc_msg()
444 cm_device_put(old_port->cm_dev); in cm_set_av_port()
446 kref_get(&port->cm_dev->kref); in cm_set_av_port()
462 return ib_init_ah_attr_from_wc(port->cm_dev->ib_device, in cm_init_av_for_response()
470 struct cm_device *cm_dev; in get_cm_port_from_path() local
476 list_for_each_entry(cm_dev, &cm.device_list, list) { in get_cm_port_from_path()
477 if (cm_dev->ib_device == attr->device) { in get_cm_port_from_path()
478 port = cm_dev->port[attr->port_num - 1]; in get_cm_port_from_path()
491 list_for_each_entry(cm_dev, &cm.device_list, list) { in get_cm_port_from_path()
492 attr = rdma_find_gid(cm_dev->ib_device, in get_cm_port_from_path()
497 port = cm_dev->port[attr->port_num - 1]; in get_cm_port_from_path()
513 struct cm_device *cm_dev; in cm_init_av_by_path() local
520 cm_dev = port->cm_dev; in cm_init_av_by_path()
522 ret = ib_find_cached_pkey(cm_dev->ib_device, port->port_num, in cm_init_av_by_path()
538 ret = ib_init_ah_attr_from_path(cm_dev->ib_device, port->port_num, path, in cm_init_av_by_path()
983 struct cm_device *cm_dev; in cm_enter_timewait() local
987 cm_dev = ib_get_client_data(cm_id_priv->id.device, &cm_client); in cm_enter_timewait()
988 if (!cm_dev) in cm_enter_timewait()
1006 if (!cm_dev->going_down) in cm_enter_timewait()
1290 spin_lock(&cm_id_priv->av.port->cm_dev->mad_agent_lock); in cm_form_tid()
1293 spin_unlock(&cm_id_priv->av.port->cm_dev->mad_agent_lock); in cm_form_tid()
1396 cm_ack_timeout(cm_id_priv->av.port->cm_dev->ack_delay, in cm_format_req()
1448 cm_ack_timeout(cm_id_priv->av.port->cm_dev->ack_delay, in cm_format_req()
1740 struct ib_device *ib_dev = work->port->cm_dev->ib_device; in cm_get_bth_pkey()
1768 struct ib_device *dev = work->port->cm_dev->ib_device; in cm_opa_to_ib_sgid()
2072 cm_alloc_id_priv(work->port->cm_dev->ib_device, NULL, NULL); in cm_req_handler()
2141 work->port->cm_dev->ib_device, work->port->port_num, in cm_req_handler()
2161 err = rdma_query_gid(work->port->cm_dev->ib_device, in cm_req_handler()
2227 cm_id_priv->av.port->cm_dev->ack_delay); in cm_format_rep()
3291 if (rdma_protocol_roce(work->port->cm_dev->ib_device, in cm_lap_handler()
3305 cm_path_set_rec_type(work->port->cm_dev->ib_device, in cm_lap_handler()
3314 ret = ib_init_ah_attr_from_wc(work->port->cm_dev->ib_device, in cm_lap_handler()
3384 if (rdma_protocol_roce(work->port->cm_dev->ib_device, in cm_apr_handler()
3551 cm_alloc_id_priv(work->port->cm_dev->ib_device, NULL, NULL); in cm_sidr_req_handler()
3900 struct cm_device *cm_dev; in cm_establish() local
3902 cm_dev = ib_get_client_data(cm_id->device, &cm_client); in cm_establish()
3903 if (!cm_dev) in cm_establish()
3946 if (!cm_dev->going_down) { in cm_establish()
4067 if (!port->cm_dev->going_down) in cm_recv_handler()
4259 struct cm_device *cm_dev = ib_get_client_data(ibdev, &cm_client); in cm_show_counter() local
4261 if (WARN_ON(!cm_dev)) in cm_show_counter()
4267 &cm_dev->port[port_num - 1] in cm_show_counter()
4325 struct cm_device *cm_dev; in cm_add_one() local
4339 cm_dev = kzalloc(struct_size(cm_dev, port, ib_device->phys_port_cnt), in cm_add_one()
4341 if (!cm_dev) in cm_add_one()
4344 kref_init(&cm_dev->kref); in cm_add_one()
4345 spin_lock_init(&cm_dev->mad_agent_lock); in cm_add_one()
4346 cm_dev->ib_device = ib_device; in cm_add_one()
4347 cm_dev->ack_delay = ib_device->attrs.local_ca_ack_delay; in cm_add_one()
4348 cm_dev->going_down = 0; in cm_add_one()
4350 ib_set_client_data(ib_device, &cm_client, cm_dev); in cm_add_one()
4363 cm_dev->port[i-1] = port; in cm_add_one()
4364 port->cm_dev = cm_dev; in cm_add_one()
4398 list_add_tail(&cm_dev->list, &cm.device_list); in cm_add_one()
4413 port = cm_dev->port[i-1]; in cm_add_one()
4420 cm_device_put(cm_dev); in cm_add_one()
4426 struct cm_device *cm_dev = client_data; in cm_remove_one() local
4435 list_del(&cm_dev->list); in cm_remove_one()
4439 cm_dev->going_down = 1; in cm_remove_one()
4448 port = cm_dev->port[i-1]; in cm_remove_one()
4461 spin_lock(&cm_dev->mad_agent_lock); in cm_remove_one()
4463 spin_unlock(&cm_dev->mad_agent_lock); in cm_remove_one()
4469 cm_device_put(cm_dev); in cm_remove_one()