Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

fs/smb/server/vfs_cache.c is_reconnectable() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->op_state s32min-(-1),1-s32max
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
DATA_SOURCE 0 opinfo r opinfo_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ft->lock
HALF_LOCKED2 &pool->lock

fs/smb/server/vfs_cache.c is_reconnectable() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->o_lease 4096-ptr_max
PARAM_VALUE 0 opinfo->op_state 0
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
DATA_SOURCE 0 opinfo r opinfo_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ft->lock
HALF_LOCKED2 &pool->lock

fs/smb/server/vfs_cache.c ksmbd_close_fd_app_instance_id() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->conn 1-u64max
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
PARAM_VALUE 0 opinfo->sess->file_table.lock.dep_map->name 0-255
PARAM_VALUE 0 opinfo->sess->file_table.lock.owner (-1)
PARAM_VALUE 0 opinfo->sess->file_table.lock.owner_cpu u32max
DATA_SOURCE 0 opinfo r opinfo_get
NOCHECK_CALL

fs/smb/server/vfs_cache.c ksmbd_close_fd_app_instance_id() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->conn 0
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
DATA_SOURCE 0 opinfo r opinfo_get
NOCHECK_CALL

fs/smb/server/smb2pdu.c smb20_oplock_break_ack() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->op_state 0
PARAM_VALUE 0 opinfo->oplock_q.lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
DATA_SOURCE 0 opinfo r opinfo_get
NOCHECK_CALL
USER_DATA 0 opinfo->level 0-7,9-254
LOCK2 &pool->lock

fs/smb/server/smb2pdu.c smb21_lease_break_ack() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->o_lease 4096-ptr_max
PARAM_VALUE 0 opinfo->o_lease->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 opinfo->o_lease->new_state 0
PARAM_VALUE 0 opinfo->o_lease->state 4-6
PARAM_VALUE 0 opinfo->op_state 0
PARAM_VALUE 0 opinfo->oplock_brk.lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 opinfo->oplock_q.lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
DATA_SOURCE 0 opinfo r lookup_lease_in_table
NOCHECK_CALL
LOCK2 &pool->lock

fs/smb/server/smb2pdu.c smb21_lease_break_ack() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->op_state s32min-(-1),1,3-s32max
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
DATA_SOURCE 0 opinfo r lookup_lease_in_table
NOCHECK_CALL
LOCK2 &pool->lock

fs/smb/server/oplock.c __smb_break_all_levII_oplock() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->conn 4096-ptr_max
PARAM_VALUE 0 opinfo->conn->status 6
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
CAPPED_DATA 0 &opinfo->op_entry 1
NOCHECK_CALL
LOCK2 &ci->m_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ksmbd_inode)->m_lock

fs/smb/server/oplock.c __smb_break_all_levII_oplock() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->conn 4096-ptr_max
PARAM_VALUE 0 opinfo->conn->status s32min-5,7-s32max
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
CAPPED_DATA 0 &opinfo->op_entry 1
NOCHECK_CALL
LOCK2 &ci->m_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct ksmbd_inode)->m_lock

fs/smb/server/oplock.c __smb_break_all_levII_oplock() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

fs/smb/server/oplock.c __smb_break_all_levII_oplock() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
DATA_SOURCE 0 opinfo r opinfo_get
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

fs/smb/server/oplock.c close_id_del_oplock() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->lease_entry.next 4096-ptr_max
PARAM_VALUE 0 opinfo->lease_entry.next->prev 4096-ptr_max
PARAM_VALUE 0 opinfo->lease_entry.prev->next 4096-ptr_max
PARAM_VALUE 0 opinfo->o_fp 4096-ptr_max
PARAM_VALUE 0 opinfo->o_fp->f_ci 4096-ptr_max
PARAM_VALUE 0 opinfo->o_fp->f_ci->m_lock.dep_map->name 0-255
PARAM_VALUE 0 opinfo->o_fp->f_ci->m_lock.first_waiter->handoff_set 1
PARAM_VALUE 0 opinfo->o_fp->f_ci->m_lock.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 opinfo->o_fp->f_ci->m_lock.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 opinfo->o_fp->f_ci->m_lock.first_waiter->type 0-1
PARAM_VALUE 0 opinfo->o_fp->f_ci->m_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 opinfo->o_lease->l_entry.next->next 4096-ptr_max
PARAM_VALUE 0 opinfo->o_lease->l_entry.next->prev 4096-ptr_max
PARAM_VALUE 0 opinfo->o_lease->l_entry.prev->next 4096-ptr_max
PARAM_VALUE 0 opinfo->o_lease->l_entry.prev->prev 4096-ptr_max
PARAM_VALUE 0 opinfo->o_lease->l_lb->lb_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 opinfo->o_lease->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 opinfo->op_state s32min-0,2-s32max
DATA_SOURCE 0 opinfo r opinfo_get
FUZZY_MAX 0 opinfo->op_state 2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/smb/server/oplock.c ksmbd_inode_has_lease() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->conn 4096-ptr_max
PARAM_VALUE 0 opinfo->conn->status s32min-5,7-s32max
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
DATA_SOURCE 0 opinfo r opinfo_get_list
NOCHECK_CALL

fs/smb/server/oplock.c oplock_break_drain_none() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/smb/server/oplock.c same_client_has_lease() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->conn 4096-ptr_max
PARAM_VALUE 0 opinfo->is_lease 1
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
NOCHECK_CALL
LOCK2 &ci->m_lock
TYPE_LOCK (struct ksmbd_inode)->m_lock

fs/smb/server/oplock.c smb2_check_durable_oplock() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
DATA_SOURCE 0 opinfo r opinfo_get
NOCHECK_CALL

fs/smb/server/oplock.c smb_break_all_write_oplock() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->conn 4096-ptr_max
PARAM_VALUE 0 opinfo->conn->status s32min-5,7-s32max
PARAM_VALUE 0 opinfo->level s32min-7,10-s32max
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
DATA_SOURCE 0 opinfo r opinfo_get_list
NOCHECK_CALL

fs/smb/server/oplock.c smb_break_all_write_oplock() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->conn 4096-ptr_max
PARAM_VALUE 0 opinfo->op_state 0-2
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
DATA_SOURCE 0 opinfo r opinfo_get_list
NOCHECK_CALL

fs/smb/server/oplock.c smb_grant_oplock() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->conn 4096-ptr_max
PARAM_VALUE 0 opinfo->is_lease 1
PARAM_VALUE 0 opinfo->o_lease 4096-ptr_max
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
DATA_SOURCE 0 opinfo r same_client_has_lease
NOCHECK_CALL

fs/smb/server/oplock.c smb_grant_oplock() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 0,4096-ptr_max
PARAM_VALUE 0 opinfo->conn 4096-ptr_max
PARAM_VALUE 0 opinfo->conn->status s32min-5,7-s32max
PARAM_VALUE 0 opinfo->level 0
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
DATA_SOURCE 0 opinfo r opinfo_get_list
NOCHECK_CALL

fs/smb/server/oplock.c smb_grant_oplock() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->conn 4096-ptr_max
PARAM_VALUE 0 opinfo->conn->status s32min-5,7-s32max
PARAM_VALUE 0 opinfo->level 8
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
DATA_SOURCE 0 opinfo r opinfo_get_list
NOCHECK_CALL

fs/smb/server/oplock.c smb_grant_oplock() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->conn 4096-ptr_max
PARAM_VALUE 0 opinfo->conn->status s32min-5,7-s32max
PARAM_VALUE 0 opinfo->level s32min-7,10-s32max
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
DATA_SOURCE 0 opinfo r opinfo_get_list
NOCHECK_CALL

fs/smb/server/oplock.c smb_grant_oplock() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->conn 4096-ptr_max
PARAM_VALUE 0 opinfo->op_state 0-2
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
DATA_SOURCE 0 opinfo r opinfo_get_list
NOCHECK_CALL

fs/smb/server/oplock.c smb_grant_oplock() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->breaking_cnt.counter 0
PARAM_VALUE 0 opinfo->conn 0,4096-ptr_max
PARAM_VALUE 0 opinfo->lease_entry.next 4096-ptr_max
PARAM_VALUE 0 opinfo->lease_entry.next->next 4096-ptr_max
PARAM_VALUE 0 opinfo->lease_entry.prev 4096-ptr_max
PARAM_VALUE 0 opinfo->lease_entry.prev->next 4096-ptr_max
PARAM_VALUE 0 opinfo->lease_entry.prev->prev 4096-ptr_max
PARAM_VALUE 0 opinfo->level 0-1,8-9
PARAM_VALUE 0 opinfo->op_entry.next 4096-ptr_max
PARAM_VALUE 0 opinfo->op_entry.next->next 4096-ptr_max
PARAM_VALUE 0 opinfo->op_entry.prev 4096-ptr_max
PARAM_VALUE 0 opinfo->op_entry.prev->next 4096-ptr_max
PARAM_VALUE 0 opinfo->op_entry.prev->prev 4096-ptr_max
PARAM_VALUE 0 opinfo->op_state 0
PARAM_VALUE 0 opinfo->oplock_brk.head.next 4096-ptr_max
PARAM_VALUE 0 opinfo->oplock_brk.head.next->next 4096-ptr_max
PARAM_VALUE 0 opinfo->oplock_brk.head.prev 4096-ptr_max
PARAM_VALUE 0 opinfo->oplock_brk.head.prev->next 4096-ptr_max
PARAM_VALUE 0 opinfo->oplock_brk.head.prev->prev 4096-ptr_max
PARAM_VALUE 0 opinfo->oplock_q.head.next 4096-ptr_max
PARAM_VALUE 0 opinfo->oplock_q.head.next->next 4096-ptr_max
PARAM_VALUE 0 opinfo->oplock_q.head.prev 4096-ptr_max
PARAM_VALUE 0 opinfo->oplock_q.head.prev->next 4096-ptr_max
PARAM_VALUE 0 opinfo->oplock_q.head.prev->prev 4096-ptr_max
PARAM_VALUE 0 opinfo->pending_break 0
PARAM_VALUE 0 opinfo->refcount.counter 1
PARAM_VALUE 0 *opinfo->o_lease->lease_key 0-255
BUF_SIZE 0 opinfo 304
BUF_SIZE 0 opinfo->o_lease (-1),192
DATA_SOURCE 0 opinfo r alloc_opinfo
NOCHECK_CALL

fs/smb/server/oplock.c smb_lazy_parent_lease_break_close() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->conn 4096-ptr_max
PARAM_VALUE 0 opinfo->conn->status 6
PARAM_VALUE 0 opinfo->is_lease 1
PARAM_VALUE 0 opinfo->o_lease 4096-ptr_max
PARAM_VALUE 0 opinfo->o_lease->state 1-u32max
PARAM_VALUE 0 opinfo->o_lease->version 2
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
CAPPED_DATA 0 &opinfo->op_entry 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &p_ci->m_lock
TYPE_LOCK (struct ksmbd_inode)->m_lock

fs/smb/server/oplock.c smb_lazy_parent_lease_break_close() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->conn 4096-ptr_max
PARAM_VALUE 0 opinfo->conn->status s32min-5,7-s32max
PARAM_VALUE 0 opinfo->is_lease 1
PARAM_VALUE 0 opinfo->o_lease 4096-ptr_max
PARAM_VALUE 0 opinfo->o_lease->state 1-u32max
PARAM_VALUE 0 opinfo->o_lease->version 2
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
CAPPED_DATA 0 &opinfo->op_entry 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &p_ci->m_lock
TYPE_LOCK (struct ksmbd_inode)->m_lock

fs/smb/server/oplock.c smb_send_parent_lease_break_noti() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->conn 4096-ptr_max
PARAM_VALUE 0 opinfo->conn->status 6
PARAM_VALUE 0 opinfo->is_lease 1
PARAM_VALUE 0 opinfo->o_lease 4096-ptr_max
PARAM_VALUE 0 opinfo->o_lease->state 1-u32max
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
CAPPED_DATA 0 &opinfo->op_entry 1
NOCHECK_CALL
LOCK2 &p_ci->m_lock
TYPE_LOCK (struct ksmbd_inode)->m_lock

fs/smb/server/oplock.c smb_send_parent_lease_break_noti() -> opinfo_put()

Type Parameter Key Value
PARAM_VALUE 0 opinfo 4096-ptr_max
PARAM_VALUE 0 opinfo->conn 4096-ptr_max
PARAM_VALUE 0 opinfo->conn->status s32min-5,7-s32max
PARAM_VALUE 0 opinfo->is_lease 1
PARAM_VALUE 0 opinfo->o_lease 4096-ptr_max
PARAM_VALUE 0 opinfo->o_lease->state 1-u32max
PARAM_VALUE 0 opinfo->refcount.counter 0-s32max
CAPPED_DATA 0 &opinfo->op_entry 1
NOCHECK_CALL
LOCK2 &p_ci->m_lock
TYPE_LOCK (struct ksmbd_inode)->m_lock