Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/block/rbd.c rbd_unregister_watch() -> __rbd_unregister_watch()

Type Parameter Key Value
PARAM_VALUE 0 rbd_dev 4096-ptr_max
PARAM_VALUE 0 rbd_dev->dev.dma_io_tlb_mem->debugfs 0-s64max
PARAM_VALUE 0 rbd_dev->dev.power.wakeirq->status 0-4294967295
PARAM_VALUE 0 rbd_dev->header.snapc->snaps 0-255
PARAM_VALUE 0 rbd_dev->header_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 rbd_dev->header_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 rbd_dev->lock_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 rbd_dev->lock_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 rbd_dev->rbd_client->client->osdc.lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 rbd_dev->rbd_client->client->osdc.lock.first_waiter->type 0-1
PARAM_VALUE 0 rbd_dev->watch_mutex.dep_map->name 0-255
PARAM_VALUE 0 rbd_dev->watch_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 rbd_dev->watch_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 rbd_dev->watch_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 rbd_dev->watch_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 rbd_dev->watch_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 rbd_dev->watch_mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 rbd_dev->watch_state 1
PARAM_VALUE 0 *rbd_dev->disk->bdi->dev_name 0-255
BUF_SIZE 0 rbd_dev (-1),4144
BUF_SIZE 0 rbd_dev (-1),4144
BUF_SIZE 0 rbd_dev->rbd_client (-1),32
CAPPED_DATA 0 &rbd_dev->watch_mutex 1
DATA_SOURCE 0 rbd_dev $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 rbd_dev->header.snapc->seq 0-u64max
USER_DATA 0 rbd_dev->watch_handle->ping_req->r_reply->con->v2.in_cursor.resid 0-u64max
USER_DATA 0 rbd_dev->watch_handle->ping_req->r_request->con->v2.out_cursor.resid 0-u64max
USER_DATA 0 rbd_dev->watch_handle->ping_req->r_request->con->v2.out_iter.count 0-1000000000[c]
USER_DATA 0 rbd_dev->watch_handle->reg_req->r_reply->con->v2.in_cursor.resid 0-u64max
USER_DATA 0 rbd_dev->watch_handle->reg_req->r_request->con->v2.out_cursor.resid 0-u64max
USER_DATA 0 rbd_dev->watch_handle->reg_req->r_request->con->v2.out_iter.count 0-1000000000[c]
NO_OVERFLOW_SIMPLE 0 rbd_dev->tag_set.queue_depth
LOCK2 0 &rbd_dev->watch_mutex
HALF_LOCKED2 &of->mutex
TYPE_LOCK (struct rbd_device)->watch_mutex

drivers/block/rbd.c rbd_watch_errcb() -> __rbd_unregister_watch()

Type Parameter Key Value
PARAM_VALUE 0 rbd_dev 4096-ptr_max
PARAM_VALUE 0 rbd_dev->lock_rwsem.dep_map->name 0-255
PARAM_VALUE 0 rbd_dev->lock_rwsem.first_waiter->handoff_set 1
PARAM_VALUE 0 rbd_dev->lock_rwsem.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 rbd_dev->lock_rwsem.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 rbd_dev->lock_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 rbd_dev->lock_rwsem.osq.tail.counter 0-s32max
PARAM_VALUE 0 rbd_dev->lock_rwsem.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 rbd_dev->lock_rwsem.wait_lock.owner (-1)
PARAM_VALUE 0 rbd_dev->lock_rwsem.wait_lock.owner_cpu u32max
PARAM_VALUE 0 rbd_dev->owner_cid.gid 0
PARAM_VALUE 0 rbd_dev->owner_cid.handle 0
PARAM_VALUE 0 rbd_dev->watch_mutex.dep_map->name 0-255
PARAM_VALUE 0 rbd_dev->watch_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 rbd_dev->watch_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 rbd_dev->watch_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 rbd_dev->watch_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 rbd_dev->watch_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 rbd_dev->watch_mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 0 rbd_dev->watch_state 1
CAPPED_DATA 0 &rbd_dev->lock_rwsem 1
CAPPED_DATA 0 &rbd_dev->watch_mutex 1
DATA_SOURCE 0 rbd_dev $0
NOCHECK_CALL
LOCK2 0 &rbd_dev->watch_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct rbd_device)->watch_mutex