Defined in 1 files as a function:
Referenced in 5 files:
- drivers/block/drbd/drbd_nl.c, line 2123
- drivers/block/drbd/drbd_receiver.c
- drivers/block/drbd/drbd_state.c
- drivers/block/drbd/drbd_state.h
- drivers/block/drbd/drbd_worker.c
Smatch caller information:
drivers/block/drbd/drbd_bitmap.c __drbd_chk_io_error_() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->resource | 4096-ptr_max |
| BUF_SIZE | 0 | device->ldev | (-1),208 |
| BUF_SIZE | 0 | device->p_uuid | (-1),8 |
| BUF_SIZE | 0 | device->resync | (-1),176 |
| BUF_SIZE | 0 | device->rs_plan_s | (-1),12-s32max |
| DATA_SOURCE | 0 | device | $0 |
| STR_LEN | 0 | device | (-1),6,12,19,23,26-27,29,31-32 |
| STR_LEN | 0 | device | (-1),6,12,19,23,26-27,29,31-32 |
| STR_LEN | 0 | device->resync->name | (-1),6 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | device->act_log->nr_elements | |
| NO_OVERFLOW_SIMPLE | 0 | device->resync->nr_elements | |
| UNITS | 0 | device | unit_byte |
| LOCK2 | flags | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| HALF_LOCKED2 | 0 | device->state_mutex | |
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_bitmap.c __drbd_chk_io_error_() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->resource | 4096-ptr_max |
| BUF_SIZE | 0 | device->ldev | (-1),208 |
| BUF_SIZE | 0 | device->p_uuid | (-1),8 |
| BUF_SIZE | 0 | device->resync | (-1),176 |
| BUF_SIZE | 0 | device->rs_plan_s | (-1),12-s32max |
| DATA_SOURCE | 0 | device | $0 |
| STR_LEN | 0 | device | (-1),6,12,19,23,26-27,29,31-32 |
| STR_LEN | 0 | device | (-1),6,12,19,23,26-27,29,31-32 |
| STR_LEN | 0 | device->resync->name | (-1),6 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | device->act_log->nr_elements | |
| NO_OVERFLOW_SIMPLE | 0 | device->resync->nr_elements | |
| UNITS | 0 | device | unit_byte |
| LOCK2 | flags | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| HALF_LOCKED2 | 0 | device->state_mutex | |
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_state.c _drbd_set_state() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| BUF_SIZE | 0 | device | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | device | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | device->ldev | (-1),208 |
| BUF_SIZE | 0 | device->p_uuid | (-1),8 |
| BUF_SIZE | 0 | device->resync | (-1)-134217728 |
| BUF_SIZE | 0 | device->rs_plan_s | (-1),12-s32max |
| CAPPED_DATA | 0 | device | 1 |
| DATA_SOURCE | 0 | device | $0 |
| STR_LEN | 0 | device | (-1),6,8,11-12,17,19-20,23,26-27,29,31-32 |
| STR_LEN | 0 | device | (-1),6,8,11-12,17,19-20,23,26-27,29,31-32 |
| STR_LEN | 0 | device->bm_io_work.why | (-1) |
| STR_LEN | 0 | device->resync->name | (-1),6 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | device->act_log->lc_cache->sheaf_capacity | |
| NO_OVERFLOW_SIMPLE | 0 | device->act_log->nr_elements | |
| NO_OVERFLOW_SIMPLE | 0 | device->resync->lc_cache->sheaf_capacity | |
| NO_OVERFLOW_SIMPLE | 0 | device->resync->nr_elements | |
| UNITS | 0 | device | unit_byte |
| HALF_LOCKED2 | &adm_ctx->resource->adm_mutex | ||
| HALF_LOCKED2 | &device->resource->req_lock | ||
| HALF_LOCKED2 | &resource->req_lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | global &resources_mutex | ||
| HALF_LOCKED2 | irq | ||
| HALF_LOCKED2 | rcu_read | ||
| HALF_LOCKED2 | 0 | device->state_mutex | |
| HALF_LOCKED2 | 0 | &device->resource->req_lock |
drivers/block/drbd/drbd_state.c _req_st_cond() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->resource | 4096-ptr_max |
| DATA_SOURCE | 0 | device | $0 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | flags | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| HALF_LOCKED2 | &adm_ctx->resource->adm_mutex | ||
| HALF_LOCKED2 | 0 | device->state_mutex | |
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_state.c conn_is_valid_transition() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | irq | ||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &connection->cstate_mutex | ||
| HALF_LOCKED2 | &connection->data.mutex | ||
| HALF_LOCKED2 | &connection->resource->conf_update | ||
| HALF_LOCKED2 | &connection->resource->req_lock | ||
| HALF_LOCKED2 | &device->resource->req_lock | ||
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_state.c conn_set_state() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | irq | ||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &connection->cstate_mutex | ||
| HALF_LOCKED2 | &connection->data.mutex | ||
| HALF_LOCKED2 | &connection->resource->conf_update | ||
| HALF_LOCKED2 | &connection->resource->req_lock | ||
| HALF_LOCKED2 | &device->resource->req_lock | ||
| HALF_LOCKED2 | &resource->req_lock | ||
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_state.c drbd_change_state() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| BUF_SIZE | 0 | device->ldev | (-1),208 |
| BUF_SIZE | 0 | device->resync | (-1),176 |
| BUF_SIZE | 0 | device->rs_plan_s | (-1),12-s32max |
| DATA_SOURCE | 0 | device | $0 |
| STR_LEN | 0 | device->resync->name | (-1),6 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | device->act_log->nr_elements | |
| NO_OVERFLOW_SIMPLE | 0 | device->resync->nr_elements | |
| LOCK2 | flags | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_state.c drbd_req_state() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| DATA_SOURCE | 0 | device | $0 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | flags | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| HALF_LOCKED2 | &adm_ctx->resource->adm_mutex | ||
| HALF_LOCKED2 | 0 | device->state_mutex | |
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_state.c drbd_req_state() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->resource | 4096-ptr_max |
| DATA_SOURCE | 0 | device | $0 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | flags | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| HALF_LOCKED2 | &adm_ctx->resource->adm_mutex | ||
| HALF_LOCKED2 | 0 | device->state_mutex | |
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_nl.c drbd_nl_attach_doit() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->resource | 4096-ptr_max |
| CAPPED_DATA | 0 | device | 1 |
| STR_LEN | 0 | device->resync->name | (-1) |
| TERMINATED | 0 | device->resync->name | 1 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | device->act_log->nr_elements | |
| NO_OVERFLOW_SIMPLE | 0 | device->resync->nr_elements | |
| LOCK2 | &adm_ctx->resource->adm_mutex | ||
| LOCK2 | irq | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| 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 | ||
| TYPE_LOCK | (struct drbd_resource)->adm_mutex | ||
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_nl.c drbd_nl_new_c_uuid_doit() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->resource | 4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &adm_ctx->resource->adm_mutex | ||
| LOCK2 | irq | ||
| LOCK2 | 0 | device->state_mutex | |
| LOCK2 | 0 | &device->resource->req_lock | |
| 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 | ||
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_actlog.c __drbd_chk_io_error_() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| BUF_SIZE | 0 | device->ldev | (-1),208 |
| BUF_SIZE | 0 | device->p_uuid | (-1),8 |
| BUF_SIZE | 0 | device->resync | (-1),176 |
| BUF_SIZE | 0 | device->rs_plan_s | (-1),12-s32max |
| CAPPED_DATA | 0 | device->bitmap->bm_number_of_pages | 1 |
| DATA_SOURCE | 0 | device | $0 |
| STR_LEN | 0 | device | (-1),6,8,11-12,17,19-20,23,26-27,29,31-32 |
| STR_LEN | 0 | device | (-1),6,8,11-12,17,19-20,23,26-27,29,31-32 |
| STR_LEN | 0 | device->bm_io_work.why | (-1) |
| STR_LEN | 0 | device->resync->name | (-1),6 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | device->act_log->lc_cache->sheaf_capacity | |
| NO_OVERFLOW_SIMPLE | 0 | device->act_log->nr_elements | |
| NO_OVERFLOW_SIMPLE | 0 | device->resync->lc_cache->sheaf_capacity | |
| NO_OVERFLOW_SIMPLE | 0 | device->resync->nr_elements | |
| UNITS | 0 | device | unit_byte |
| LOCK2 | flags | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| HALF_LOCKED2 | 0 | device->state_mutex | |
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_actlog.c __drbd_chk_io_error_() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| BUF_SIZE | 0 | device->ldev | (-1),208 |
| BUF_SIZE | 0 | device->p_uuid | (-1),8 |
| BUF_SIZE | 0 | device->resync | (-1),176 |
| BUF_SIZE | 0 | device->rs_plan_s | (-1),12-s32max |
| CAPPED_DATA | 0 | device->bitmap->bm_number_of_pages | 1 |
| DATA_SOURCE | 0 | device | $0 |
| STR_LEN | 0 | device | (-1),6,8,11-12,17,19-20,23,26-27,29,31-32 |
| STR_LEN | 0 | device | (-1),6,8,11-12,17,19-20,23,26-27,29,31-32 |
| STR_LEN | 0 | device->bm_io_work.why | (-1) |
| STR_LEN | 0 | device->resync->name | (-1),6 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | device->act_log->lc_cache->sheaf_capacity | |
| NO_OVERFLOW_SIMPLE | 0 | device->act_log->nr_elements | |
| NO_OVERFLOW_SIMPLE | 0 | device->resync->lc_cache->sheaf_capacity | |
| NO_OVERFLOW_SIMPLE | 0 | device->resync->nr_elements | |
| UNITS | 0 | device | unit_byte |
| LOCK2 | flags | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| HALF_LOCKED2 | 0 | device->state_mutex | |
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_main.c __drbd_chk_io_error_() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->resource | 4096-ptr_max |
| BUF_SIZE | 0 | device->ldev | (-1),208 |
| BUF_SIZE | 0 | device->p_uuid | (-1),8 |
| BUF_SIZE | 0 | device->resync | (-1),176 |
| BUF_SIZE | 0 | device->rs_plan_s | (-1),12-s32max |
| DATA_SOURCE | 0 | device | $0 |
| STR_LEN | 0 | device | (-1),8,11-12,17,19-20,23,26-27,29,31-32 |
| STR_LEN | 0 | device | (-1),8,11-12,17,19-20,23,26-27,29,31-32 |
| STR_LEN | 0 | device->resync->name | (-1),6 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | device->act_log->nr_elements | |
| NO_OVERFLOW_SIMPLE | 0 | device->resync->nr_elements | |
| LOCK2 | flags | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| HALF_LOCKED2 | &adm_ctx->resource->adm_mutex | ||
| HALF_LOCKED2 | 0 | device->state_mutex | |
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_main.c __drbd_chk_io_error_() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->resource | 4096-ptr_max |
| BUF_SIZE | 0 | device->ldev | (-1),208 |
| BUF_SIZE | 0 | device->p_uuid | (-1),8 |
| BUF_SIZE | 0 | device->resync | (-1),176 |
| BUF_SIZE | 0 | device->rs_plan_s | (-1),12-s32max |
| DATA_SOURCE | 0 | device | $0 |
| STR_LEN | 0 | device | (-1),8,11-12,17,19-20,23,26-27,29,31-32 |
| STR_LEN | 0 | device | (-1),8,11-12,17,19-20,23,26-27,29,31-32 |
| STR_LEN | 0 | device->resync->name | (-1),6 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | device->act_log->nr_elements | |
| NO_OVERFLOW_SIMPLE | 0 | device->resync->nr_elements | |
| LOCK2 | flags | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| HALF_LOCKED2 | &adm_ctx->resource->adm_mutex | ||
| HALF_LOCKED2 | 0 | device->state_mutex | |
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_receiver.c receive_state() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->resource | 4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| LOCK2 | irq | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_receiver.c receive_state() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->resource | 4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| LOCK2 | irq | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_receiver.c receive_state() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->resource | 4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| LOCK2 | irq | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_receiver.c receive_uuids() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
drivers/block/drbd/drbd_req.c __drbd_chk_io_error_() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| BUF_SIZE | 0 | device | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | device | s32min-(-1),1-s32max |
| CAPPED_DATA | 0 | device | 1 |
| DATA_SOURCE | 0 | device | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | device | unit_byte |
| LOCK2 | &device->resource->req_lock | ||
| LOCK2 | flags | ||
| HALF_LOCKED2 | &bio->bi_bdev->bd_queue->queue_lock | ||
| HALF_LOCKED2 | &cache->background_work_lock | ||
| HALF_LOCKED2 | &head->srcu | ||
| HALF_LOCKED2 | &ic->endio_wait.lock | ||
| HALF_LOCKED2 | &md->io_barrier | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &s->lock | ||
| HALF_LOCKED2 | &sdp->sd_log_flush_lock | ||
| HALF_LOCKED2 | global &bch_register_lock | ||
| HALF_LOCKED2 | irq | ||
| HALF_LOCKED2 | lock.complete_slot | ||
| HALF_LOCKED2 | lock.pending_slot | ||
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_req.c __drbd_chk_io_error_() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| BUF_SIZE | 0 | device | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | device | s32min-(-1),1-s32max |
| CAPPED_DATA | 0 | device | 1 |
| DATA_SOURCE | 0 | device | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | device | unit_byte |
| HALF_LOCKED2 | &device->resource->req_lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | irq | ||
| HALF_LOCKED2 | 0 | &device->resource->req_lock | |
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_req.c maybe_pull_ahead() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->resource | 4096-ptr_max |
| BUF_SIZE | 0 | device | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | device | s32min-(-1),1-s32max |
| CAPPED_DATA | 0 | device->resource | 1 |
| DATA_SOURCE | 0 | device | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| UNITS | 0 | device | unit_byte |
| LOCK2 | &resource->req_lock | ||
| LOCK2 | irq | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_req.c maybe_pull_ahead() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->resource | 4096-ptr_max |
| BUF_SIZE | 0 | device | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | device | s32min-(-1),1-s32max |
| CAPPED_DATA | 0 | device->resource | 1 |
| DATA_SOURCE | 0 | device | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| UNITS | 0 | device | unit_byte |
| LOCK2 | &resource->req_lock | ||
| LOCK2 | irq | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_worker.c __drbd_chk_io_error_() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| DATA_SOURCE | 0 | device | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | flags | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_worker.c __drbd_chk_io_error_() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| DATA_SOURCE | 0 | device | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | flags | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_worker.c drbd_pause_after() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| DATA_SOURCE | 0 | device | r idr_get_next |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | global &resources_mutex | ||
| LOCK2 | irq | ||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &adm_ctx->resource->adm_mutex | ||
| HALF_LOCKED2 | device->state_mutex |
drivers/block/drbd/drbd_worker.c drbd_resume_next() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| DATA_SOURCE | 0 | device | r idr_get_next |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | global &resources_mutex | ||
| LOCK2 | irq | ||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &adm_ctx->resource->adm_mutex |
drivers/block/drbd/drbd_worker.c drbd_resync_finished() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->resource | 4096-ptr_max |
| CAPPED_DATA | 0 | device->state.disk | 1 |
| PREEMPT_ADD | <- disables preempt | ||
| LOCK2 | irq | ||
| LOCK2 | 0 | &device->resource->req_lock | |
| HALF_LOCKED2 | device->state_mutex | ||
| TYPE_LOCK | (struct drbd_resource)->req_lock |
drivers/block/drbd/drbd_worker.c drbd_start_resync() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| CAPPED_DATA | 0 | device->state_mutex | 1 |
| DATA_SOURCE | 0 | device | $0 |
| LOCK2 | global &resources_mutex | ||
| LOCK2 | irq | ||
| LOCK2 | 0 | device->state_mutex |
drivers/block/drbd/drbd_worker.c drbd_start_resync() -> drbd_read_state()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | device | 4096-ptr_max |
| PARAM_VALUE | 0 | device->resource | 4096-ptr_max |
| DATA_SOURCE | 0 | device | $0 |
| LOCK2 | global &resources_mutex | ||
| LOCK2 | irq | ||
| LOCK2 | 0 | device->state_mutex |