Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/block/drbd/drbd_nl.c drbd_nl_down_doit() -> drbd_set_role()

Type Parameter Key Value
PARAM_VALUE 1 new_role 2
PARAM_VALUE 2 force 0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &resource->adm_mutex
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &devlink->lock
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &dpll_lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &net_dm_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct drbd_resource)->adm_mutex

drivers/block/drbd/drbd_nl.c drbd_nl_set_role() -> drbd_set_role()

Type Parameter Key Value
PARAM_VALUE 1 new_role 1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &adm_ctx->resource->adm_mutex
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &devlink->lock
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &dpll_lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &net_dm_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct drbd_resource)->adm_mutex

drivers/block/drbd/drbd_nl.c drbd_nl_set_role() -> drbd_set_role()

Type Parameter Key Value
PARAM_VALUE 1 new_role 2
PARAM_VALUE 2 force 0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &adm_ctx->resource->adm_mutex
HALF_LOCKED2 &dev->lock
HALF_LOCKED2 &devlink->lock
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &dpll_lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &net_dm_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct drbd_resource)->adm_mutex