Defined in 2 files as a function:

Referenced in 2 files:

Smatch caller information:

fs/ceph/mds_client.c ceph_mdsc_close_sessions() -> __close_session()

Type Parameter Key Value
PARAM_VALUE 0 mdsc 4096-ptr_max
PARAM_VALUE 0 mdsc->fsc 4096-ptr_max
PARAM_VALUE 0 mdsc->fsc->client 4096-ptr_max
PARAM_VALUE 0 mdsc->max_sessions 1-s32max
PARAM_VALUE 0 mdsc->mutex.dep_map->name 0-255
PARAM_VALUE 0 mdsc->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 mdsc->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 mdsc->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 mdsc->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 mdsc->snap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 mdsc->snap_rwsem.first_waiter->type 0-1
PARAM_VALUE 1 session 1-u64max
PARAM_VALUE 1 session->s_mutex.dep_map->name 0-255
PARAM_VALUE 1 session->s_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 1 session->s_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 1 session->s_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 1 session->s_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 1 session->s_mutex.wait_lock.owner (-1)
PARAM_VALUE 1 session->s_mutex.wait_lock.owner_cpu u32max
BUF_SIZE 1 session (-1),1-s32max
BUF_SIZE 1 session (-1),1-s32max
CAPPED_DATA 0 &mdsc->mutex 1
CAPPED_DATA 1 &session->s_mutex 1
DATA_SOURCE 0 mdsc $0
DATA_SOURCE 1 session r __ceph_lookup_mds_session
RX_PATH
TASK_NOT_RUNNING
LOCK2 1 &session->s_mutex
TYPE_LOCK (struct ceph_mds_session)->s_mutex

fs/ceph/mds_client.c ceph_mdsc_force_umount() -> __close_session()

Type Parameter Key Value
PARAM_VALUE 0 mdsc 4096-ptr_max
PARAM_VALUE 0 mdsc->fsc 4096-ptr_max
PARAM_VALUE 0 mdsc->max_sessions 1-s32max
PARAM_VALUE 0 mdsc->mutex.dep_map->name 0-255
PARAM_VALUE 0 mdsc->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 mdsc->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 mdsc->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 mdsc->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 1 session 4096-ptr_max
PARAM_VALUE 1 session->s_mutex.dep_map->name 0-255
PARAM_VALUE 1 session->s_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 1 session->s_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 1 session->s_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 1 session->s_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 1 session->s_mutex.wait_lock.owner (-1)
PARAM_VALUE 1 session->s_mutex.wait_lock.owner_cpu u32max
PARAM_VALUE 1 session->s_waiting.next 4096-ptr_max
PARAM_VALUE 1 session->s_waiting.next->next 4096-ptr_max
PARAM_VALUE 1 session->s_waiting.next->prev 4096-ptr_max
PARAM_VALUE 1 session->s_waiting.prev 4096-ptr_max
PARAM_VALUE 1 session->s_waiting.prev->next 4096-ptr_max
PARAM_VALUE 1 session->s_waiting.prev->prev 4096-ptr_max
BUF_SIZE 1 session (-1),1-s32max
BUF_SIZE 1 session (-1),1-s32max
CAPPED_DATA 0 &mdsc->mutex 1
CAPPED_DATA 1 &session->s_mutex 1
CAPPED_DATA 1 &session->s_waiting 1
DATA_SOURCE 0 mdsc $0
DATA_SOURCE 1 session r __ceph_lookup_mds_session
NOCHECK_CALL
LOCK2 1 &session->s_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ceph_mds_session)->s_mutex

fs/ceph/mds_client.c ceph_mdsc_reset_workfn() -> __close_session()

Type Parameter Key Value
PARAM_VALUE 0 mdsc 4096-ptr_max
PARAM_VALUE 0 mdsc->cap_dirty_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 mdsc->cap_flush_list.next 4096-ptr_max
PARAM_VALUE 0 mdsc->fsc 4096-ptr_max
PARAM_VALUE 0 mdsc->fsc->client->monc.auth 4096-ptr_max
PARAM_VALUE 0 mdsc->max_sessions 1-s32max
PARAM_VALUE 0 mdsc->mutex.dep_map->name 0-255
PARAM_VALUE 0 mdsc->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 mdsc->mutex.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 mdsc->mutex.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 mdsc->mutex.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 mdsc->mutex.first_waiter->task->blocked_lock.raw_lock.val.counter s32min-s32max
PARAM_VALUE 0 mdsc->mutex.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 mdsc->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 mdsc->request_tree.rb_node 0,4096-ptr_max
PARAM_VALUE 0 mdsc->reset_state.lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 mdsc->reset_state.phase 3
PARAM_VALUE 0 mdsc->reset_state.shutdown 0
PARAM_VALUE 0 mdsc->sessions 4096-ptr_max
CAPPED_DATA 0 mdsc->max_sessions 1
CAPPED_DATA 0 &mdsc->cap_flush_list 1
CAPPED_DATA 0 &mdsc->mutex 1
HALF_LOCKED2 &pool->lock

net/ceph/mon_client.c ceph_monc_stop() -> __close_session()

Type Parameter Key Value
PARAM_VALUE 0 mdsc 4096-ptr_max
PARAM_VALUE 0 mdsc->mutex.dep_map->name 0-255
PARAM_VALUE 0 mdsc->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 mdsc->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 mdsc->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 mdsc->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 mdsc->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 mdsc->mutex.wait_lock.owner_cpu u32max
CAPPED_DATA 0 &mdsc->mutex 1
DATA_SOURCE 0 mdsc $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 0 &mdsc->mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &client_mutex
TYPE_LOCK (struct ceph_mon_client)->mutex

net/ceph/mon_client.c reopen_session() -> __close_session()

Type Parameter Key Value
PARAM_VALUE 0 mdsc 4096-ptr_max
PARAM_VALUE 0 mdsc->mutex.dep_map->name 0-255
PARAM_VALUE 0 mdsc->mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 mdsc->mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 mdsc->mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 mdsc->mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 mdsc->mutex.wait_lock.owner (-1)
PARAM_VALUE 0 mdsc->mutex.wait_lock.owner_cpu u32max
BUF_SIZE 0 mdsc (-1),2584,2656,2776
BUF_SIZE 0 mdsc (-1),2584,2656,2776
DATA_SOURCE 0 mdsc $0
NOCHECK_CALL
LOCK2 0 &mdsc->mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ceph_mon_client)->mutex