Defined in 3 files as a function:
- drivers/block/xen-blkback/blkback.c, line 433 (as a function)
- drivers/scsi/hptiop.c, line 709 (as a function)
- drivers/video/fbdev/omap/hwa742.c, line 259 (as a function)
Referenced in 25 files:
- crypto/testmgr.c
- drivers/accel/qaic/qaic_data.c
- drivers/block/ublk_drv.c
- drivers/block/xen-blkback/blkback.c
- drivers/cpufreq/intel_pstate.c
- drivers/crypto/aspeed/aspeed-hace-crypto.c
- drivers/crypto/marvell/cesa/hash.c
- drivers/infiniband/hw/hfi1/user_sdma.c
- drivers/infiniband/ulp/iser/iser_initiator.c
- drivers/net/ethernet/marvell/octeontx2/af/cn20k/npc.c
- drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.c
- drivers/net/ethernet/marvell/octeontx2/af/rvu_npc_fs.c
- drivers/net/ethernet/marvell/octeontx2/af/rvu_switch.c
- drivers/net/ethernet/marvell/octeontx2/nic/otx2_common.c
- drivers/net/ethernet/marvell/octeontx2/nic/otx2_pf.c
- drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
- drivers/scsi/esas2r/esas2r_ioctl.c
- drivers/scsi/hptiop.c
- drivers/usb/gadget/function/f_hid.c
- drivers/usb/gadget/function/f_loopback.c
- drivers/video/fbdev/omap/hwa742.c
- fs/smb/server/auth.c
- net/9p/client.c
- net/tls/tls_device_fallback.c
- security/keys/trusted-keys/trusted_dcp.c
Smatch caller information:
drivers/block/xen-blkback/blkback.c __do_block_io_op() -> free_req()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | hba | 4096-ptr_max |
| PARAM_VALUE | 0 | hba->blk_rings.common.sring | 4096-ptr_max |
| PARAM_VALUE | 0 | hba->blkif | 4096-ptr_max |
| PARAM_VALUE | 0 | hba->blkif->blk_protocol | 1-3 |
| PARAM_VALUE | 0 | hba->blkif->vbd.discard_secure | 1 |
| PARAM_VALUE | 0 | hba->pending_free_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | hba->waiting_reqs | 0 |
| PARAM_VALUE | 1 | req | 4096-ptr_max |
| BUF_SIZE | 0 | hba | 128 |
| BUF_SIZE | 0 | hba | 128 |
| DATA_SOURCE | 0 | hba | $0 |
| DATA_SOURCE | 1 | req | r alloc_req |
| PARAM_COMPARE | 0 | &hba->pending_free | != $0->pending_free.next |
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 1 | req->ring->st_rd_sect | |
| NO_OVERFLOW_SIMPLE | 1 | req->ring->st_wr_sect |
drivers/block/xen-blkback/blkback.c dispatch_other_io() -> free_req()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | hba | 4096-ptr_max |
| PARAM_VALUE | 0 | hba->blk_rings.common.sring | 4096-ptr_max |
| PARAM_VALUE | 0 | hba->blkif | 4096-ptr_max |
| PARAM_VALUE | 0 | hba->blkif->blk_protocol | 1-3 |
| PARAM_VALUE | 0 | hba->blkif->vbd.discard_secure | 1 |
| PARAM_VALUE | 0 | hba->blkif->vbd.readonly | 0-1 |
| PARAM_VALUE | 0 | hba->pending_free_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | hba->waiting_reqs | 0 |
| PARAM_VALUE | 1 | req | 4096-ptr_max |
| BUF_SIZE | 0 | hba | 128 |
| BUF_SIZE | 0 | hba | 128 |
| DATA_SOURCE | 0 | hba | $0 |
| DATA_SOURCE | 1 | req | $2 |
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 1 | req->ring->st_rd_sect | |
| NO_OVERFLOW_SIMPLE | 1 | req->ring->st_wr_sect |
drivers/block/xen-blkback/blkback.c dispatch_rw_block_io() -> free_req()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | hba | 4096-ptr_max |
| PARAM_VALUE | 0 | hba->blk_ring_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | hba->blk_rings.common.sring | 4096-ptr_max |
| PARAM_VALUE | 0 | hba->blkif | 4096-ptr_max |
| PARAM_VALUE | 0 | hba->blkif->blk_protocol | 1-3 |
| PARAM_VALUE | 0 | hba->blkif->vbd.discard_secure | 1 |
| PARAM_VALUE | 0 | hba->blkif->vbd.readonly | 0-1 |
| PARAM_VALUE | 0 | hba->pending_free_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | hba->waiting_reqs | 0 |
| PARAM_VALUE | 1 | req | 4096-ptr_max |
| BUF_SIZE | 0 | hba | 128 |
| BUF_SIZE | 0 | hba | 128 |
| BUF_SIZE | 1 | req->ring | (-1),128 |
| DATA_SOURCE | 0 | hba | $0 |
| DATA_SOURCE | 1 | req | $2 |
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 1 | req->ring->st_rd_sect | |
| NO_OVERFLOW_SIMPLE | 1 | req->ring->st_wr_sect |
drivers/block/xen-blkback/blkback.c xen_blkbk_unmap_and_respond_callback() -> free_req()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | hba | 4096-ptr_max |
| PARAM_VALUE | 0 | hba->blk_ring_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | hba->blkif | 4096-ptr_max |
| PARAM_VALUE | 0 | hba->blkif->blk_protocol | 1-3 |
| PARAM_VALUE | 0 | hba->free_pages.lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | req | 4096-ptr_max |
| PARAM_VALUE | 1 | req->ring | 4096-ptr_max |
| PARAM_VALUE | 1 | req->ring->blk_ring_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | req->ring->blkif | 4096-ptr_max |
| PARAM_VALUE | 1 | req->ring->blkif->blk_protocol | 1-3 |
| PARAM_VALUE | 1 | req->ring->free_pages.lock.rlock.dep_map->name | 0-255 |
| BUF_SIZE | 1 | req | (-1),1-s32max |
| BUF_SIZE | 1 | req | (-1),1-s32max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 1 | req | unit_byte |
drivers/scsi/hptiop.c hptiop_finish_scsi_req() -> free_req()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | hba | 4096-ptr_max |
| PARAM_VALUE | 1 | req | 4096-ptr_max |
| BUF_SIZE | 0 | hba->host | (-1),4520-s32max |
| BUF_SIZE | 0 | hba->pcidev | (-1),1-s32max |
| DATA_SOURCE | 0 | hba | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HOST_DATA | 0 | hba->firmware_version | 0-u32max |
| HOST_DATA | 0 | hba->interface_version | 0-u32max |
| HOST_DATA | 0 | hba->max_devices | 0-u32max |
| HOST_DATA | 0 | hba->max_request_size | 0-u32max |
| HOST_DATA | 0 | hba->max_requests | 0-255[c] |
| HOST_DATA | 0 | hba->max_sg_descriptors | 0-u32max |
| HOST_DATA | 0 | hba->pcidev->current_state | 0-3[c] |
| HOST_DATA | 0 | hba->sdram_size | 0-u32max |
| HOST_DATA | 0 | hba->u.mvfrey.inlist_wptr | 0-u32max |
| HOST_DATA | 0 | hba->u.mvfrey.internal_mem_size | 2053-1312752[c] |
| HOST_DATA | 0 | hba->u.mvfrey.list_count | 0-u16max |
| HOST_DATA | 0 | hba->u.mvfrey.outlist_rptr | 0-65534,u32max |
| HOST_DATA | 0 | *hba->u.mvfrey.outlist_cptr | 0,16384-u32max |
| NO_OVERFLOW_SIMPLE | 0 | hba->max_sg_descriptors | |
| NO_OVERFLOW_SIMPLE | 0 | hba->u.mvfrey.internal_mem_size | |
| HALF_LOCKED2 | irq | ||
| HALF_LOCKED2 | 0 | hba->host->host_lock |
drivers/scsi/hptiop.c hptiop_probe() -> free_req()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | hba | 4096-ptr_max |
| PARAM_VALUE | 0 | hba->req_list | 0,4096-ptr_max |
| PARAM_VALUE | 1 | req->next | 0 |
| BUF_SIZE | 0 | hba->host | 4600-s32max |
| BUF_SIZE | 0 | hba->pcidev | (-1),16,24,40,56,108-1096,1384,1600,1616,1752,2072,2576,8064 |
| CAPPED_DATA | 0 | hba->max_requests | 1 |
| BIT_INFO | 0 | hba->req_size | 0x0,0xffffffe0 |
| MEM_ZERO | 0 | hba | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HOST_DATA | 0 | hba->firmware_version | 0-u32max |
| HOST_DATA | 0 | hba->interface_version | 0-u32max |
| HOST_DATA | 0 | hba->max_devices | 0-u32max |
| HOST_DATA | 0 | hba->max_request_size | 0-u32max |
| HOST_DATA | 0 | hba->max_requests | 1-255[c] |
| HOST_DATA | 0 | hba->max_sg_descriptors | 0-u32max |
| HOST_DATA | 0 | hba->pcidev->current_state | 0-3[c] |
| HOST_DATA | 0 | hba->sdram_size | 0-u32max |
| HOST_DATA | 0 | hba->u.mvfrey.inlist_wptr | 0-u32max |
| HOST_DATA | 0 | hba->u.mvfrey.list_count | 0-u16max |
| HOST_DATA | 0 | hba->u.mvfrey.outlist_rptr | 0-65534,u32max |
| HOST_DATA | 0 | *hba->u.mvfrey.outlist_cptr | 0,16384-u32max |
| NO_OVERFLOW_SIMPLE | 0 | hba->max_sg_descriptors |
drivers/scsi/hptiop.c hptiop_queuecommand_lck() -> free_req()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | hba | 4096-ptr_max |
| PARAM_VALUE | 1 | req | 4096-ptr_max |
| DATA_SOURCE | 1 | req | r get_req |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | irq_flags | ||
| LOCK2 | shost->host_lock | ||
| HALF_LOCKED2 | &sdev->state_mutex |