Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

drivers/thunderbolt/icm.c icm_request() -> tb_cfg_request_put()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->callback 3198851022032351232
PARAM_VALUE 0 req->callback_data 5932112582668308480
PARAM_VALUE 0 req->copy 964053227424043008
PARAM_VALUE 0 req->ctl 4096-ptr_max
PARAM_VALUE 0 req->ctl->request_queue_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 req->ctl->running 1
PARAM_VALUE 0 req->flags 0
PARAM_VALUE 0 req->list.next 4096-ptr_max
PARAM_VALUE 0 req->list.next->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->prev 4096-ptr_max
PARAM_VALUE 0 req->match 5731745475252862976
PARAM_VALUE 0 req->npackets 1,14
PARAM_VALUE 0 req->request 4096-ptr_max
PARAM_VALUE 0 req->request_size 4,8,24,32,36,56,64,84,132
PARAM_VALUE 0 req->request_type 11
PARAM_VALUE 0 req->response 4096-ptr_max
PARAM_VALUE 0 req->response_size 8,16,24,32,36,84,88,96,132,152
PARAM_VALUE 0 req->response_type 12
BUF_SIZE 0 req 232
BUF_SIZE 0 req->request 4,8,24,32,36,56,64,84,132
BUF_SIZE 0 req->response 8,16,24,32,36,84,88,96,132,2128
CAPPED_DATA 0 req 1
DATA_SOURCE 0 req r tb_cfg_request_alloc
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 req->npackets
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &sw->tb->lock
HALF_LOCKED2 &tb->lock

drivers/thunderbolt/icm.c icm_usb4_switch_nvm_authenticate() -> tb_cfg_request_put()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->callback 3416899349664829440
PARAM_VALUE 0 req->callback_data 4096-ptr_max
PARAM_VALUE 0 req->copy 964053227424043008
PARAM_VALUE 0 req->ctl 4096-ptr_max
PARAM_VALUE 0 req->ctl->request_queue_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 req->ctl->running 1
PARAM_VALUE 0 req->flags 0
PARAM_VALUE 0 req->list.next 4096-ptr_max
PARAM_VALUE 0 req->list.next->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->prev 4096-ptr_max
PARAM_VALUE 0 req->match 5731745475252862976
PARAM_VALUE 0 req->npackets 1
PARAM_VALUE 0 req->request 4096-ptr_max
PARAM_VALUE 0 req->request_size 84
PARAM_VALUE 0 req->request_type 11
PARAM_VALUE 0 req->response 4096-ptr_max
PARAM_VALUE 0 req->response_size 84
PARAM_VALUE 0 req->response_type 12
BUF_SIZE 0 req 232
BUF_SIZE 0 req->request 84
BUF_SIZE 0 req->response 84
DATA_SOURCE 0 req r tb_cfg_request_alloc
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &sw->tb->lock

drivers/thunderbolt/dma_port.c dma_port_read() -> tb_cfg_request_put()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->callback 3198851022032351232
PARAM_VALUE 0 req->callback_data 5932112582668308480
PARAM_VALUE 0 req->copy 4578231973898088448
PARAM_VALUE 0 req->ctl 4096-ptr_max
PARAM_VALUE 0 req->ctl->request_queue_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 req->ctl->running 1
PARAM_VALUE 0 req->flags 0
PARAM_VALUE 0 req->list.next 4096-ptr_max
PARAM_VALUE 0 req->list.next->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->prev 4096-ptr_max
PARAM_VALUE 0 req->match 5069044196936261632
PARAM_VALUE 0 req->request 1722644572450025472
PARAM_VALUE 0 req->request_size 12
PARAM_VALUE 0 req->request_type 1
PARAM_VALUE 0 req->response 3384085732121575424
PARAM_VALUE 0 req->response_size 12-76
PARAM_VALUE 0 req->response_type 1
BUF_SIZE 0 req 232
BUF_SIZE 0 req->request 12
BUF_SIZE 0 req->response 268
CAPPED_DATA 0 req 1
CAPPED_DATA 0 req->response_size 1
DATA_SOURCE 0 req r tb_cfg_request_alloc
NOSPEC 0 req->response_size
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 req->response_size 12-76[c]

drivers/thunderbolt/dma_port.c dma_port_write() -> tb_cfg_request_put()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->callback 3198851022032351232
PARAM_VALUE 0 req->callback_data 5932112582668308480
PARAM_VALUE 0 req->copy 4578231973898088448
PARAM_VALUE 0 req->ctl 4096-ptr_max
PARAM_VALUE 0 req->ctl->request_queue_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 req->ctl->running 1
PARAM_VALUE 0 req->flags 0
PARAM_VALUE 0 req->list.next 4096-ptr_max
PARAM_VALUE 0 req->list.next->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->prev 4096-ptr_max
PARAM_VALUE 0 req->match 5069044196936261632
PARAM_VALUE 0 req->request 1334736226563284992
PARAM_VALUE 0 req->request_size 12-76
PARAM_VALUE 0 req->request_type 2
PARAM_VALUE 0 req->response 9186374568547160064
PARAM_VALUE 0 req->response_size 12
PARAM_VALUE 0 req->response_type 2
BUF_SIZE 0 req 232
BUF_SIZE 0 req->request 268
BUF_SIZE 0 req->response 12
CAPPED_DATA 0 req 1
CAPPED_DATA 0 req->request_size 1
DATA_SOURCE 0 req r tb_cfg_request_alloc
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &sw->tb->lock

drivers/thunderbolt/xdomain.c __tb_xdomain_request() -> tb_cfg_request_put()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->callback 3198851022032351232
PARAM_VALUE 0 req->callback_data 5932112582668308480
PARAM_VALUE 0 req->copy 5078013893785747456
PARAM_VALUE 0 req->ctl 4096-ptr_max
PARAM_VALUE 0 req->ctl->request_queue_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 req->ctl->running 1
PARAM_VALUE 0 req->flags 0
PARAM_VALUE 0 req->list.next 4096-ptr_max
PARAM_VALUE 0 req->list.next->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->prev 4096-ptr_max
PARAM_VALUE 0 req->match 2285294635734847488
PARAM_VALUE 0 req->request 374522254696554496,2108890038876872704,5118092592703901696,5560125930460131328,6774672360580624384,6980367452074381312,7332878330699296768
PARAM_VALUE 0 req->request_size 32,36,48,68,92
PARAM_VALUE 0 req->request_type 6-7
PARAM_VALUE 0 req->response 4096-ptr_max
PARAM_VALUE 0 req->response_size 36,40,56,72,100,252
PARAM_VALUE 0 req->response_type 7
BUF_SIZE 0 req 232
BUF_SIZE 0 req->request 32,36,48,68,92
BUF_SIZE 0 req->response 36,40,56,72,100,252
CAPPED_DATA 0 req 1
DATA_SOURCE 0 req r tb_cfg_request_alloc
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/thunderbolt/xdomain.c __tb_xdomain_response() -> tb_cfg_request_put()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->callback 4390726188799836160
PARAM_VALUE 0 req->callback_data 4096-ptr_max
PARAM_VALUE 0 req->copy 5078013893785747456
PARAM_VALUE 0 req->ctl 4096-ptr_max
PARAM_VALUE 0 req->ctl->request_queue_lock.dep_map->name 0-255
PARAM_VALUE 0 req->ctl->request_queue_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 req->ctl->request_queue_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 req->ctl->request_queue_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 req->ctl->request_queue_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 req->ctl->request_queue_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 req->ctl->request_queue_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 req->ctl->running 1
PARAM_VALUE 0 req->flags 0
PARAM_VALUE 0 req->list.next 4096-ptr_max
PARAM_VALUE 0 req->list.next->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->prev 4096-ptr_max
PARAM_VALUE 0 req->match 2285294635734847488
PARAM_VALUE 0 req->request 4096-ptr_max
PARAM_VALUE 0 req->request_size 36,40,56,72-252
PARAM_VALUE 0 req->request_type 7
BUF_SIZE 0 req 232
BUF_SIZE 0 req->request 36,40,56,72-252
CAPPED_DATA 0 req->request_size 1
DATA_SOURCE 0 req r tb_cfg_request_alloc
RX_PATH
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/thunderbolt/xdomain.c response_ready() -> tb_cfg_request_put()

Type Parameter Key Value
BUF_SIZE 0 req 96,176,232
DATA_SOURCE 0 req $0
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/thunderbolt/ctl.c tb_cfg_read_raw() -> tb_cfg_request_put()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->callback 3198851022032351232
PARAM_VALUE 0 req->callback_data 5932112582668308480
PARAM_VALUE 0 req->copy 5307027512922566656
PARAM_VALUE 0 req->ctl 4096-ptr_max
PARAM_VALUE 0 req->ctl->request_queue_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 req->ctl->running 1
PARAM_VALUE 0 req->flags 0
PARAM_VALUE 0 req->list.next 4096-ptr_max
PARAM_VALUE 0 req->list.next->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->prev 4096-ptr_max
PARAM_VALUE 0 req->match 4381229910526525440
PARAM_VALUE 0 req->request 777746747889188864
PARAM_VALUE 0 req->request_size 12
PARAM_VALUE 0 req->request_type 1
PARAM_VALUE 0 req->response 2021737492318261248
PARAM_VALUE 0 req->response_size 12-252
PARAM_VALUE 0 req->response_type 1
BUF_SIZE 0 req 232
BUF_SIZE 0 req->request 12
BUF_SIZE 0 req->response 268
CAPPED_DATA 0 req->response_size 1
DATA_SOURCE 0 req r tb_cfg_request_alloc
NOSPEC 0 req->response_size
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 req->response_size 12-76[c]
HALF_LOCKED2 &tb->lock

drivers/thunderbolt/ctl.c tb_cfg_request() -> tb_cfg_request_put()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->callback_data 4096-ptr_max
PARAM_VALUE 0 req->copy 964053227424043008,4578231973898088448,5078013893785747456,5307027512922566656
PARAM_VALUE 0 req->ctl->request_queue_lock.dep_map->name 0-255
PARAM_VALUE 0 req->ctl->request_queue_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 req->ctl->request_queue_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 req->ctl->request_queue_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 req->ctl->request_queue_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 req->ctl->request_queue_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 req->flags 0
PARAM_VALUE 0 req->list.next 4096-ptr_max
PARAM_VALUE 0 req->list.next->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->prev 4096-ptr_max
PARAM_VALUE 0 req->match 2285294635734847488,4381229910526525440,5069044196936261632,5731745475252862976
PARAM_VALUE 0 req->request 4096-ptr_max
PARAM_VALUE 0 req->request_size 0-u32max
PARAM_VALUE 0 req->request_type 1-2,6-7,9,11
BUF_SIZE 0 req 232
BUF_SIZE 0 req->callback_data 96,176,232
BUF_SIZE 0 req->request 4,8,12,24,32,36,40,48,56,64,68,72-252,268
BUF_SIZE 0 req->response (-1),8,12,16,24,32,36,40,56,72,84,88,96,100,132,252,268,2128
CAPPED_DATA 0 req->request_size 1
DATA_SOURCE 0 req $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 req->response_size 12-76[c]
NO_OVERFLOW_SIMPLE 0 req->npackets
HALF_LOCKED2 &icm->request_lock

drivers/thunderbolt/ctl.c tb_cfg_request_find() -> tb_cfg_request_put()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
CAPPED_DATA 0 &req->list 1
RX_PATH
NOCHECK_CALL
LOCK2 &pkg->ctl->request_queue_lock
TYPE_LOCK (struct tb_ctl)->request_queue_lock

drivers/thunderbolt/ctl.c tb_cfg_request_work() -> tb_cfg_request_put()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->ctl 4096-ptr_max
PARAM_VALUE 0 req->ctl->request_queue_lock.dep_map->name 0-255
PARAM_VALUE 0 req->ctl->request_queue_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 req->ctl->request_queue_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 req->ctl->request_queue_lock.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 req->ctl->request_queue_lock.first_waiter->task->blocked_lock.owner_cpu 4294967295
PARAM_VALUE 0 req->ctl->request_queue_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 req->ctl->request_queue_lock.osq.tail.counter 0-s32max
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/thunderbolt/ctl.c tb_cfg_reset() -> tb_cfg_request_put()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->callback 3198851022032351232
PARAM_VALUE 0 req->callback_data 5932112582668308480
PARAM_VALUE 0 req->copy 5307027512922566656
PARAM_VALUE 0 req->ctl 4096-ptr_max
PARAM_VALUE 0 req->ctl->request_queue_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 req->ctl->running 1
PARAM_VALUE 0 req->flags 0
PARAM_VALUE 0 req->list.next 4096-ptr_max
PARAM_VALUE 0 req->list.next->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->prev 4096-ptr_max
PARAM_VALUE 0 req->match 4381229910526525440
PARAM_VALUE 0 req->request 3005525824773812224
PARAM_VALUE 0 req->request_size 8
PARAM_VALUE 0 req->request_type 9
PARAM_VALUE 0 req->response 2181683619534295040
PARAM_VALUE 0 req->response_size 8
PARAM_VALUE 0 req->response_type 9
BUF_SIZE 0 req 232
BUF_SIZE 0 req->request 8
BUF_SIZE 0 req->response 8
DATA_SOURCE 0 req r tb_cfg_request_alloc
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tb->lock
TYPE_LOCK (struct tb)->lock

drivers/thunderbolt/ctl.c tb_cfg_write_raw() -> tb_cfg_request_put()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->callback 3198851022032351232
PARAM_VALUE 0 req->callback_data 5932112582668308480
PARAM_VALUE 0 req->copy 5307027512922566656
PARAM_VALUE 0 req->ctl 4096-ptr_max
PARAM_VALUE 0 req->ctl->request_queue_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 req->ctl->running 1
PARAM_VALUE 0 req->flags 0
PARAM_VALUE 0 req->list.next 4096-ptr_max
PARAM_VALUE 0 req->list.next->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->next 4096-ptr_max
PARAM_VALUE 0 req->list.prev->prev 4096-ptr_max
PARAM_VALUE 0 req->match 4381229910526525440
PARAM_VALUE 0 req->request 7906848384154128384
PARAM_VALUE 0 req->request_size 0-u32max
PARAM_VALUE 0 req->request_type 2
PARAM_VALUE 0 req->response 5687366026249486336
PARAM_VALUE 0 req->response_size 12
PARAM_VALUE 0 req->response_type 2
BUF_SIZE 0 req 232
BUF_SIZE 0 req->request 268
BUF_SIZE 0 req->response 12
DATA_SOURCE 0 req r tb_cfg_request_alloc
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &tb->lock

drivers/thunderbolt/ctl.c tb_ctl_rx_callback() -> tb_cfg_request_put()

Type Parameter Key Value
PARAM_VALUE 0 req 4096-ptr_max
PARAM_VALUE 0 req->result.response_port 0-63
PARAM_VALUE 0 req->result.response_route 0-18014398509481983
PARAM_VALUE 0 req->result.tb_error 0-255
DATA_SOURCE 0 req r tb_cfg_request_find
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL