Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 9 files:

Smatch caller information:

drivers/infiniband/hw/mthca/mthca_mad.c mthca_create_agents() -> ib_unregister_mad_agent()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &mthca_device_mutex
HALF_LOCKED2 &pool->lock

drivers/infiniband/hw/mthca/mthca_mad.c mthca_free_agents() -> ib_unregister_mad_agent()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &mthca_device_mutex

drivers/infiniband/hw/mlx4/mad.c mlx4_ib_mad_cleanup() -> ib_unregister_mad_agent()

Type Parameter Key Value
PARAM_VALUE 0 mad_agent 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->mutex

drivers/infiniband/hw/mlx4/mad.c mlx4_ib_mad_init() -> ib_unregister_mad_agent()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/infiniband/sw/rdmavt/mad.c rvt_create_mad_agents() -> ib_unregister_mad_agent()

Type Parameter Key Value
PARAM_VALUE 0 mad_agent 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 mad_agent->agent.device->hw_stats_attr_index
NO_OVERFLOW_SIMPLE 0 mad_agent->agent.device->num_comp_vectors
HALF_LOCKED2 &pool->lock

drivers/infiniband/sw/rdmavt/mad.c rvt_free_mad_agents() -> ib_unregister_mad_agent()

Type Parameter Key Value
PARAM_VALUE 0 mad_agent 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/infiniband/core/sa_query.c ib_sa_add_one() -> ib_unregister_mad_agent()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &device->client_data_rwsem
LOCK2 global &clients_rwsem
LOCK2 global &devices_rwsem
HALF_LOCKED2 &device->unregistration_lock
TYPE_LOCK (struct ib_device)->client_data_rwsem

drivers/infiniband/core/sa_query.c ib_sa_remove_one() -> ib_unregister_mad_agent()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &device->unregistration_lock

drivers/infiniband/core/cm.c cm_add_one() -> ib_unregister_mad_agent()

Type Parameter Key Value
PARAM_VALUE 0 mad_agent 4096-ptr_max
PARAM_VALUE 0 mad_agent->context 4096-ptr_max
PARAM_VALUE 0 mad_agent->device 4096-ptr_max
PARAM_VALUE 0 mad_agent->flags 0
PARAM_VALUE 0 mad_agent->qp 1-u64max
PARAM_VALUE 0 mad_agent->rmpp_version 0
BUF_SIZE 0 mad_agent 80
BUF_SIZE 0 mad_agent->context 384
CAPPED_DATA 0 mad_agent->port_num 1
DATA_SOURCE 0 mad_agent r ib_register_mad_agent
STR_LEN 0 mad_agent->device (-1),6-9,11-12
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 mad_agent->agent.device->hw_stats_attr_index
NO_OVERFLOW_SIMPLE 0 mad_agent->agent.device->num_comp_vectors
LOCK2 &ib_device->client_data_rwsem
LOCK2 global &clients_rwsem
LOCK2 global &devices_rwsem
HALF_LOCKED2 &ib_device->unregistration_lock
TYPE_LOCK (struct ib_device)->client_data_rwsem

drivers/infiniband/core/cm.c cm_add_one() -> ib_unregister_mad_agent()

Type Parameter Key Value
PARAM_VALUE 0 mad_agent 4096-ptr_max
PARAM_VALUE 0 mad_agent->context 4096-ptr_max
PARAM_VALUE 0 mad_agent->device 4096-ptr_max
PARAM_VALUE 0 mad_agent->flags 0
PARAM_VALUE 0 mad_agent->qp 1-u64max
PARAM_VALUE 0 mad_agent->rmpp_version 0
BUF_SIZE 0 mad_agent 80
BUF_SIZE 0 mad_agent->context 384
CAPPED_DATA 0 mad_agent->port_num 1
DATA_SOURCE 0 mad_agent r ib_register_mad_agent
STR_LEN 0 mad_agent->device (-1),6-9,11-12
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 mad_agent->agent.device->hw_stats_attr_index
NO_OVERFLOW_SIMPLE 0 mad_agent->agent.device->num_comp_vectors
LOCK2 &ib_device->client_data_rwsem
LOCK2 global &clients_rwsem
LOCK2 global &devices_rwsem
HALF_LOCKED2 &ib_device->unregistration_lock
TYPE_LOCK (struct ib_device)->client_data_rwsem

drivers/infiniband/core/cm.c cm_add_one() -> ib_unregister_mad_agent()

Type Parameter Key Value
STR_LEN 0 mad_agent->device (-1)
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 mad_agent->agent.device->hw_stats_attr_index
NO_OVERFLOW_SIMPLE 0 mad_agent->agent.device->num_comp_vectors
LOCK2 &ib_device->client_data_rwsem
LOCK2 global &clients_rwsem
LOCK2 global &devices_rwsem
HALF_LOCKED2 &ib_device->unregistration_lock
TYPE_LOCK (struct ib_device)->client_data_rwsem

drivers/infiniband/core/cm.c cm_add_one() -> ib_unregister_mad_agent()

Type Parameter Key Value
STR_LEN 0 mad_agent->device (-1)
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 mad_agent->agent.device->hw_stats_attr_index
NO_OVERFLOW_SIMPLE 0 mad_agent->agent.device->num_comp_vectors
LOCK2 &ib_device->client_data_rwsem
LOCK2 global &clients_rwsem
LOCK2 global &devices_rwsem
HALF_LOCKED2 &ib_device->unregistration_lock
TYPE_LOCK (struct ib_device)->client_data_rwsem

drivers/infiniband/core/cm.c cm_remove_one() -> ib_unregister_mad_agent()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ib_device->unregistration_lock

drivers/infiniband/core/cm.c cm_remove_one() -> ib_unregister_mad_agent()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ib_device->unregistration_lock

drivers/infiniband/ulp/srpt/ib_srpt.c srpt_unregister_mad_agent() -> ib_unregister_mad_agent()

Type Parameter Key Value
PARAM_VALUE 0 mad_agent 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &device->client_data_rwsem
HALF_LOCKED2 &device->unregistration_lock
HALF_LOCKED2 global &clients_rwsem
HALF_LOCKED2 global &devices_rwsem

drivers/infiniband/core/user_mad.c ib_umad_close() -> ib_unregister_mad_agent()

Type Parameter Key Value
PARAM_VALUE 0 mad_agent 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &file->port->file_mutex
TYPE_LOCK (struct ib_umad_port)->file_mutex

drivers/infiniband/core/user_mad.c ib_umad_kill_port() -> ib_unregister_mad_agent()

Type Parameter Key Value
PARAM_VALUE 0 mad_agent 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &port->file_mutex
HALF_LOCKED2 &device->client_data_rwsem
HALF_LOCKED2 &device->unregistration_lock
HALF_LOCKED2 global &clients_rwsem
HALF_LOCKED2 global &devices_rwsem
TYPE_LOCK (struct ib_umad_port)->file_mutex

drivers/infiniband/core/user_mad.c ib_umad_reg_agent() -> ib_unregister_mad_agent()

Type Parameter Key Value
PARAM_VALUE 0 mad_agent 4096-ptr_max
PARAM_VALUE 0 mad_agent->context 4096-ptr_max
PARAM_VALUE 0 mad_agent->device 4096-ptr_max
PARAM_VALUE 0 mad_agent->flags 0
PARAM_VALUE 0 mad_agent->qp 1-u64max
PARAM_VALUE 0 mad_agent->rmpp_version 0-1
BUF_SIZE 0 mad_agent 80
BUF_SIZE 0 mad_agent->context s32min-(-2),1-s32max
CAPPED_DATA 0 mad_agent->port_num 1
DATA_SOURCE 0 mad_agent r ib_register_mad_agent
NOCHECK_CALL
USER_DATA 0 mad_agent->flags 0
USER_DATA 0 mad_agent->rmpp_version 0
NO_OVERFLOW_SIMPLE 0 mad_agent->agent.device->hw_stats_attr_index
NO_OVERFLOW_SIMPLE 0 mad_agent->agent.device->num_comp_vectors
LOCK2 &file->port->file_mutex
TYPE_LOCK (struct ib_umad_port)->file_mutex

drivers/infiniband/core/user_mad.c ib_umad_reg_agent2() -> ib_unregister_mad_agent()

Type Parameter Key Value
PARAM_VALUE 0 mad_agent 4096-ptr_max
PARAM_VALUE 0 mad_agent->context 4096-ptr_max
PARAM_VALUE 0 mad_agent->device 4096-ptr_max
PARAM_VALUE 0 mad_agent->flags 0
PARAM_VALUE 0 mad_agent->qp 1-u64max
PARAM_VALUE 0 mad_agent->rmpp_version 0-1
BUF_SIZE 0 mad_agent 80
BUF_SIZE 0 mad_agent->context s32min-(-2),1-s32max
CAPPED_DATA 0 mad_agent->port_num 1
DATA_SOURCE 0 mad_agent r ib_register_mad_agent
NOCHECK_CALL
USER_DATA 0 mad_agent->flags 0
USER_DATA 0 mad_agent->rmpp_version 0
NO_OVERFLOW_SIMPLE 0 mad_agent->agent.device->hw_stats_attr_index
NO_OVERFLOW_SIMPLE 0 mad_agent->agent.device->num_comp_vectors
LOCK2 &file->port->file_mutex
TYPE_LOCK (struct ib_umad_port)->file_mutex

drivers/infiniband/core/user_mad.c ib_umad_unreg_agent() -> ib_unregister_mad_agent()

Type Parameter Key Value
PARAM_VALUE 0 mad_agent 1-u64max
NOCHECK_CALL
LOCK2 &file->port->file_mutex
TYPE_LOCK (struct ib_umad_port)->file_mutex

drivers/infiniband/core/agent.c ib_agent_port_close() -> ib_unregister_mad_agent()

Type Parameter Key Value
PARAM_VALUE 0 mad_agent 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &device->client_data_rwsem
HALF_LOCKED2 &device->unregistration_lock
HALF_LOCKED2 global &clients_rwsem
HALF_LOCKED2 global &devices_rwsem

drivers/infiniband/core/agent.c ib_agent_port_close() -> ib_unregister_mad_agent()

Type Parameter Key Value
PARAM_VALUE 0 mad_agent 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &device->client_data_rwsem
HALF_LOCKED2 &device->unregistration_lock
HALF_LOCKED2 global &clients_rwsem
HALF_LOCKED2 global &devices_rwsem

drivers/infiniband/core/agent.c ib_agent_port_open() -> ib_unregister_mad_agent()

Type Parameter Key Value
PARAM_VALUE 0 mad_agent 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &device->client_data_rwsem
LOCK2 global &clients_rwsem
LOCK2 global &devices_rwsem
HALF_LOCKED2 &device->unregistration_lock
TYPE_LOCK (struct ib_device)->client_data_rwsem