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_sync()

Type Parameter Key Value
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->copy 964053227424043008
PARAM_VALUE 1 req->kref.refcount.refs.counter 1
PARAM_VALUE 1 req->match 5731745475252862976
PARAM_VALUE 1 req->npackets 1,14
PARAM_VALUE 1 req->request 4096-ptr_max
PARAM_VALUE 1 req->request_size 4,8,24,32,36,56,64,84,132
PARAM_VALUE 1 req->request_type 11
PARAM_VALUE 1 req->response 4096-ptr_max
PARAM_VALUE 1 req->response_size 8,16,24,32,36,84,88,96,132,152
PARAM_VALUE 1 req->response_type 12
PARAM_VALUE 2 timeout_msec 250,5000,10000,20000
BUF_SIZE 1 req 232
BUF_SIZE 1 req->request 4,8,24,32,36,56,64,84,132
BUF_SIZE 1 req->response 8,16,24,32,36,84,88,96,132,2128
DATA_SOURCE 1 req r tb_cfg_request_alloc
DATA_SOURCE 2 timeout_msec $7
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 ctl->frame_pool->allocation
NO_OVERFLOW_SIMPLE 1 req->npackets
LOCK2 &icm->request_lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &sw->tb->lock
HALF_LOCKED2 &tb->lock
TYPE_LOCK (struct icm)->request_lock

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

Type Parameter Key Value
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->copy 4578231973898088448
PARAM_VALUE 1 req->kref.refcount.refs.counter 1
PARAM_VALUE 1 req->match 5069044196936261632
PARAM_VALUE 1 req->request 1722644572450025472
PARAM_VALUE 1 req->request_size 12
PARAM_VALUE 1 req->request_type 1
PARAM_VALUE 1 req->response 3384085732121575424
PARAM_VALUE 1 req->response_size 12-76
PARAM_VALUE 1 req->response_type 1
PARAM_VALUE 2 timeout_msec 50,5000
BUF_SIZE 1 req 232
BUF_SIZE 1 req->request 12
BUF_SIZE 1 req->response 268
CAPPED_DATA 1 req->response_size 1
DATA_SOURCE 0 ctl $0
DATA_SOURCE 1 req r tb_cfg_request_alloc
DATA_SOURCE 2 timeout_msec $6
HARD_MAX 2 timeout_msec 5000
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 req->response_size 12-76[c]

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

Type Parameter Key Value
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->copy 4578231973898088448
PARAM_VALUE 1 req->kref.refcount.refs.counter 1
PARAM_VALUE 1 req->match 5069044196936261632
PARAM_VALUE 1 req->request 1334736226563284992
PARAM_VALUE 1 req->request_size 12-76
PARAM_VALUE 1 req->request_type 2
PARAM_VALUE 1 req->response 9186374568547160064
PARAM_VALUE 1 req->response_size 12
PARAM_VALUE 1 req->response_type 2
PARAM_VALUE 2 timeout_msec 5000
BUF_SIZE 1 req 232
BUF_SIZE 1 req->request 268
BUF_SIZE 1 req->response 12
CAPPED_DATA 1 req->request_size 1
DATA_SOURCE 0 ctl $0
DATA_SOURCE 1 req r tb_cfg_request_alloc
DATA_SOURCE 2 timeout_msec $6
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &sw->tb->lock

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

Type Parameter Key Value
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->copy 5078013893785747456
PARAM_VALUE 1 req->kref.refcount.refs.counter 1
PARAM_VALUE 1 req->match 2285294635734847488
PARAM_VALUE 1 req->request 374522254696554496,2108890038876872704,5118092592703901696,5560125930460131328,6774672360580624384,6980367452074381312,7332878330699296768
PARAM_VALUE 1 req->request_size 32,36,48,68,92
PARAM_VALUE 1 req->request_type 6-7
PARAM_VALUE 1 req->response 4096-ptr_max
PARAM_VALUE 1 req->response_size 36,40,56,72,100,252
PARAM_VALUE 1 req->response_type 7
PARAM_VALUE 2 timeout_msec 500,1000
BUF_SIZE 1 req 232
BUF_SIZE 1 req->request 32,36,48,68,92
BUF_SIZE 1 req->response 36,40,56,72,100,252
DATA_SOURCE 0 ctl $0
DATA_SOURCE 1 req r tb_cfg_request_alloc
DATA_SOURCE 2 timeout_msec $7
RX_PATH
TASK_NOT_RUNNING

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

Type Parameter Key Value
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->copy 5307027512922566656
PARAM_VALUE 1 req->kref.refcount.refs.counter 1
PARAM_VALUE 1 req->match 4381229910526525440
PARAM_VALUE 1 req->request 777746747889188864
PARAM_VALUE 1 req->request_size 12
PARAM_VALUE 1 req->request_type 1
PARAM_VALUE 1 req->response 2021737492318261248
PARAM_VALUE 1 req->response_size 12-252
PARAM_VALUE 1 req->response_type 1
BUF_SIZE 1 req 232
BUF_SIZE 1 req->request 12
BUF_SIZE 1 req->response 268
CAPPED_DATA 1 req->response_size 1
DATA_SOURCE 0 ctl $0
DATA_SOURCE 1 req r tb_cfg_request_alloc
DATA_SOURCE 2 timeout_msec $7
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 req->response_size 12-76[c]
NO_OVERFLOW_SIMPLE 0 ctl->frame_pool->allocation
HALF_LOCKED2 &tb->lock

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

Type Parameter Key Value
PARAM_VALUE 0 ctl 4096-ptr_max
PARAM_VALUE 0 ctl->frame_pool->dev->cma_area->alloc_mutex.osq.tail.counter s32min-s32max
PARAM_VALUE 0 ctl->frame_pool->dev->dma_uses_io_tlb 1
PARAM_VALUE 0 ctl->frame_pool->dev->iommu->attach_deferred 0-1
PARAM_VALUE 0 ctl->frame_pool->dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 ctl->frame_pool->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 ctl->request_queue_lock->first_waiter->task->blocked_lock.owner (-4611686018427387904)-4611686018427387903
PARAM_VALUE 0 ctl->request_queue_lock.dep_map->name 0-255
PARAM_VALUE 0 ctl->request_queue_lock.first_waiter->task->blocked_lock.dep_map->name 0-255
PARAM_VALUE 0 ctl->request_queue_lock.first_waiter->task->usage.refs.counter s32min-s32max
PARAM_VALUE 0 ctl->tx->lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->copy 5307027512922566656
PARAM_VALUE 1 req->kref.refcount.refs.counter 1
PARAM_VALUE 1 req->match 4381229910526525440
PARAM_VALUE 1 req->request 3005525824773812224
PARAM_VALUE 1 req->request_size 8
PARAM_VALUE 1 req->request_type 9
PARAM_VALUE 1 req->response 2181683619534295040
PARAM_VALUE 1 req->response_size 8
PARAM_VALUE 1 req->response_type 9
BUF_SIZE 1 req 232
BUF_SIZE 1 req->request 8
BUF_SIZE 1 req->response 8
DATA_SOURCE 0 ctl $0
DATA_SOURCE 1 req r tb_cfg_request_alloc
RX_PATH
TASK_NOT_RUNNING
LOCK2 &tb->lock
TYPE_LOCK (struct tb)->lock

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

Type Parameter Key Value
PARAM_VALUE 0 ctl 4096-ptr_max
PARAM_VALUE 1 req 4096-ptr_max
PARAM_VALUE 1 req->copy 5307027512922566656
PARAM_VALUE 1 req->kref.refcount.refs.counter 1
PARAM_VALUE 1 req->match 4381229910526525440
PARAM_VALUE 1 req->request 7906848384154128384
PARAM_VALUE 1 req->request_size 0-u32max
PARAM_VALUE 1 req->request_type 2
PARAM_VALUE 1 req->response 5687366026249486336
PARAM_VALUE 1 req->response_size 12
PARAM_VALUE 1 req->response_type 2
BUF_SIZE 1 req 232
BUF_SIZE 1 req->request 268
BUF_SIZE 1 req->response 12
DATA_SOURCE 0 ctl $0
DATA_SOURCE 1 req r tb_cfg_request_alloc
DATA_SOURCE 2 timeout_msec $7
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &tb->lock