Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 21 files:
- crypto/krb5/rfc3961_simplified.c
- crypto/krb5/rfc8009_aes2.c, line 210
- drivers/crypto/axis/artpec6_crypto.c, line 438
- drivers/crypto/bcm/util.c, line 75
- drivers/crypto/hisilicon/sec2/sec_crypto.c, line 1937
- drivers/crypto/intel/keembay/keembay-ocs-aes-core.c
- drivers/crypto/mxs-dcp.c, line 385
- drivers/crypto/talitos.c, line 1048
- drivers/crypto/ti/dthev2-aes.c, line 739
- drivers/mmc/host/atmel-mci.c
- drivers/net/wireless/intel/iwlwifi/fw/dbg-old.c
- drivers/net/wireless/intel/iwlwifi/fw/dbg.c, line 1903
- drivers/nvme/target/core.c, line 95
- drivers/scsi/qla2xxx/qla_edif.c, line 2054
- drivers/scsi/scsi_debug.c, line 1605
- drivers/staging/greybus/sdio.c, line 349
- drivers/target/iscsi/cxgbit/cxgbit_target.c, line 830
- drivers/usb/cdns3/cdnsp-ring.c, line 624
- drivers/usb/host/xhci-ring.c, line 866
- drivers/usb/host/xhci.c, line 1389
- lib/scatterlist.c, line 1054
Smatch caller information:
drivers/scsi/scsi_debug.c p_fill_from_dev_buffer() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 2 | buf | 3074339742013947904 |
| PARAM_VALUE | 3 | buflen | 0-s32max,18446744071562067968-u64max |
| PARAM_VALUE | 4 | skip | 0-4294967294 |
| BUF_SIZE | 2 | buf | 64 |
| BUF_SIZE | 2 | buf | 64 |
| DATA_SOURCE | 2 | buf | $1 |
| DATA_SOURCE | 3 | buflen | $2 |
| DATA_SOURCE | 4 | skip | $3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | sgl | unit_byte |
| HALF_LOCKED2 | &sdev->state_mutex |
drivers/net/wireless/intel/iwlwifi/fw/dbg.c iwl_fw_error_ini_dump() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sgl | 1-u64max |
| PARAM_VALUE | 1 | nents | 0-s32max |
| BUF_SIZE | 0 | sgl | 0,32-4096 |
| BUF_SIZE | 0 | sgl | 0,32-4096 |
| DATA_SOURCE | 0 | sgl | r iwl_fw_dbg_alloc_sgtable |
| DATA_SOURCE | 1 | nents | r sg_nents |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 4 | skip | |
| UNITS | 3 | buflen | unit_byte |
| HALF_LOCKED2 | &fwrt->ops_ctx->mutex | ||
| HALF_LOCKED2 | &fwrt->ops_ctx->wiphy->mtx |
crypto/krb5/rfc3961_simplified.c krb5_aead_encrypt() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sgl | 11244472960000000,1895645142076108800,2564027771357270016,4703020413151715328,5805476440592236544,7558071477613424640,8934857238906052608,9188881253106405376 |
| PARAM_VALUE | 1 | nents | 0-s32max |
| PARAM_VALUE | 2 | buf | 16,4096-ptr_max |
| PARAM_VALUE | 4 | skip | 0 |
| BUF_SIZE | 0 | sgl | (-1),256,512 |
| BUF_SIZE | 0 | sgl | (-1),256,512 |
| BUF_SIZE | 2 | buf | 0-u32max |
| BUF_SIZE | 2 | buf | 0-u32max |
| CAPPED_DATA | 3 | buflen | 1 |
| DATA_SOURCE | 0 | sgl | $2 |
| DATA_SOURCE | 1 | nents | $3 |
| DATA_SOURCE | 2 | buf | r _kzalloc_noprof |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &server->cm_token_lock |
crypto/krb5/rfc3961_simplified.c rfc3961_get_mic() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sgl | 117285532735471616,1852313690669457408,7892576877329629184 |
| PARAM_VALUE | 1 | nents | 1-1048581 |
| PARAM_VALUE | 2 | *buf | 0-255 |
| PARAM_VALUE | 4 | skip | 0 |
| BUF_SIZE | 0 | sgl | (-1),256 |
| BUF_SIZE | 0 | sgl | (-1),256 |
| CAPPED_DATA | 1 | nents | 1 |
| CAPPED_DATA | 3 | buflen | 1 |
| DATA_SOURCE | 0 | sgl | $3 |
| DATA_SOURCE | 1 | nents | $4 |
| RX_PATH | |||
| TASK_NOT_RUNNING |
drivers/crypto/intel/keembay/keembay-ocs-aes-core.c kmb_ocs_aead_run() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sgl | 1-u64max |
| PARAM_VALUE | 1 | nents | 0-s32max |
| PARAM_VALUE | 3 | buflen | 0-s32max,18446744071562067968-u64max |
| PARAM_VALUE | 4 | skip | 0-4294967295 |
| BUF_SIZE | 2 | buf | 16 |
| CAPPED_DATA | 0 | sgl | 1 |
| DATA_SOURCE | 3 | buflen | r crypto_aead_authsize |
| NOCHECK_CALL | |||
| UNITS | 0 | sgl | unit_byte |
| UNITS | 4 | skip | unit_byte |
drivers/crypto/intel/keembay/keembay-ocs-aes-core.c sg_swap_blocks() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 2 | buf | 3090179645152157696 |
| PARAM_VALUE | 3 | buflen | 16 |
| PARAM_VALUE | 4 | skip | 0-4294967295 |
| BUF_SIZE | 2 | buf | 16 |
| CAPPED_DATA | 0 | sgl | 1 |
| CAPPED_DATA | 4 | skip | 1 |
| CAPPED_DATA | 4 | skip | 1 |
| DATA_SOURCE | 0 | sgl | $0 |
| DATA_SOURCE | 1 | nents | $1 |
| DATA_SOURCE | 4 | skip | $3 |
| NOCHECK_CALL | |||
| UNITS | 0 | sgl | unit_byte |
| UNITS | 4 | skip | unit_byte |
drivers/crypto/intel/keembay/keembay-ocs-aes-core.c sg_swap_blocks() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 2 | buf | 6965161248144908288 |
| PARAM_VALUE | 3 | buflen | 16 |
| PARAM_VALUE | 4 | skip | 0-4294967295 |
| BUF_SIZE | 2 | buf | 16 |
| CAPPED_DATA | 0 | sgl | 1 |
| CAPPED_DATA | 4 | skip | 1 |
| CAPPED_DATA | 4 | skip | 1 |
| DATA_SOURCE | 0 | sgl | $0 |
| DATA_SOURCE | 1 | nents | $1 |
| DATA_SOURCE | 4 | skip | $2 |
| NOCHECK_CALL | |||
| UNITS | 0 | sgl | unit_byte |
| UNITS | 4 | skip | unit_byte |
drivers/usb/host/xhci-ring.c xhci_unmap_td_bounce_buffer() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | nents | 1-u32max |
| BUF_SIZE | 2 | buf | 1-s32max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | sgl | unit_byte |
| UNITS | 1 | nents | unit_array_size |
| UNITS | 3 | buflen | unit_byte |
| UNITS | 4 | skip | unit_byte |
| HALF_LOCKED2 | &xhci->lock | ||
| HALF_LOCKED2 | flags | ||
| TYPE_LOCK | (struct xhci_hcd)->lock |
drivers/nvme/target/core.c nvmet_copy_to_sgl() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 3 | buflen | 0-17179869176 |
| BUF_SIZE | 2 | buf | (-1),1-s32max |
| BUF_SIZE | 2 | buf | (-1),1-s32max |
| CAPPED_DATA | 3 | buflen | 1 |
| CAPPED_DATA | 3 | buflen | 1 |
| DATA_SOURCE | 2 | buf | $2 |
| DATA_SOURCE | 3 | buflen | $3 |
| DATA_SOURCE | 4 | skip | $1 |
| FUZZY_MAX | 3 | buflen | 4 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 2 | *buf | s64min-s64max |
| NO_OVERFLOW_SIMPLE | 1 | nents | |
| UNITS | 0 | sgl | unit_byte |
| UNITS | 2 | buf | unit_byte |
| UNITS | 3 | buflen | unit_byte |
| UNITS | 4 | skip | unit_byte |
| BYTE_COUNT | 2 | ==buf3 | 8050 |
| USER_PTR | 2 | buf | |
| HALF_LOCKED2 | &ctrl->error_lock | ||
| HALF_LOCKED2 | &ctrl->lock | ||
| HALF_LOCKED2 | &log_mgr->lock | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | global &nvmet_ana_sem |
drivers/usb/cdns3/cdnsp-ring.c cdnsp_unmap_td_bounce_buffer() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| BUF_SIZE | 2 | buf | 1-s32max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | sgl | unit_byte |
| UNITS | 1 | nents | unit_page |
| UNITS | 3 | buflen | unit_byte |
| UNITS | 4 | skip | unit_byte |
| HALF_LOCKED2 | &pdev->lock | ||
| HALF_LOCKED2 | &pdev->lock | ||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | flags | ||
| TYPE_LOCK | (struct cdnsp_device)->lock |
crypto/krb5/rfc8009_aes2.c rfc8009_encrypt() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sgl | 11244472960000000,1895645142076108800,2564027771357270016,4703020413151715328,5805476440592236544,7558071477613424640,8934857238906052608,9188881253106405376 |
| PARAM_VALUE | 1 | nents | 0-s32max |
| PARAM_VALUE | 2 | buf | 16,4096-ptr_max |
| PARAM_VALUE | 4 | skip | 0 |
| BUF_SIZE | 0 | sgl | (-1),256,512 |
| BUF_SIZE | 0 | sgl | (-1),256,512 |
| BUF_SIZE | 2 | buf | 0-u32max |
| BUF_SIZE | 2 | buf | 0-u32max |
| CAPPED_DATA | 3 | buflen | 1 |
| DATA_SOURCE | 0 | sgl | $2 |
| DATA_SOURCE | 1 | nents | $3 |
| DATA_SOURCE | 2 | buf | r _kzalloc_noprof |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &server->cm_token_lock |
drivers/net/wireless/intel/iwlwifi/fw/dbg-old.c iwl_fw_error_dump() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sgl | 1-u64max |
| PARAM_VALUE | 1 | nents | 0-s32max |
| PARAM_VALUE | 2 | buf | 4096-ptr_max |
| PARAM_VALUE | 4 | skip | 0 |
| BUF_SIZE | 0 | sgl | 0,32-4096 |
| BUF_SIZE | 0 | sgl | 0,32-4096 |
| DATA_SOURCE | 0 | sgl | r iwl_fw_dbg_alloc_sgtable |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 3 | buflen | unit_byte |
| HALF_LOCKED2 | &fwrt->ops_ctx->mutex | ||
| HALF_LOCKED2 | &fwrt->ops_ctx->wiphy->mtx |
drivers/net/wireless/intel/iwlwifi/fw/dbg-old.c iwl_fw_error_dump() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sgl | 1-u64max |
| PARAM_VALUE | 1 | nents | 0-s32max |
| BUF_SIZE | 0 | sgl | 0,32-4096 |
| BUF_SIZE | 0 | sgl | 0,32-4096 |
| DATA_SOURCE | 0 | sgl | r iwl_fw_dbg_alloc_sgtable |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 3 | buflen | unit_byte |
| UNITS | 4 | skip | unit_byte |
| HALF_LOCKED2 | &fwrt->ops_ctx->mutex | ||
| HALF_LOCKED2 | &fwrt->ops_ctx->wiphy->mtx |
drivers/usb/host/xhci.c xhci_unmap_temp_buf() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | nents | 1-u32max |
| PARAM_VALUE | 4 | skip | 0 |
| BUF_SIZE | 2 | buf | s32min-(-2),1-s32max |
| NOSPEC | 3 | buflen | |
| NOSPEC | 3 | buflen | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 3 | buflen | 1-s32max |
| NO_OVERFLOW_SIMPLE | 0 | sgl->length | |
| NO_OVERFLOW_SIMPLE | 2 | buf | |
| UNITS | 0 | sgl | unit_byte |
| UNITS | 1 | nents | unit_array_size |
| UNITS | 2 | buf | unit_byte |
| UNITS | 3 | buflen | unit_byte |
drivers/scsi/qla2xxx/qla_edif.c qla_pur_get_pending() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 3 | buflen | 0-s16max,18446744073709518848-u64max |
| PARAM_VALUE | 4 | skip | 0 |
| BUF_SIZE | 2 | buf | 2168 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | __tag_set->srcu | ||
| HALF_LOCKED2 | rcu_read |
drivers/target/iscsi/cxgbit/cxgbit_target.c cxgbit_skb_copy_to_sg() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | sgl | 4096-ptr_max |
| PARAM_VALUE | 1 | nents | 1-4097 |
| PARAM_VALUE | 2 | *buf | 0-255 |
| PARAM_VALUE | 3 | buflen | 1-u32max |
| PARAM_VALUE | 4 | skip | 0-4294967295 |
| DATA_SOURCE | 0 | sgl | $1 |
| DATA_SOURCE | 1 | nents | $2 |
| DATA_SOURCE | 3 | buflen | r skb_seq_read |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 4 | skip | unit_byte |
drivers/crypto/hisilicon/sec2/sec_crypto.c sec_aead_callback() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | nents | 0-s32max |
| PARAM_VALUE | 3 | buflen | 0-u32max |
| PARAM_VALUE | 4 | skip | 0-4294967295 |
| BUF_SIZE | 2 | buf | 64,128-8388480 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | sgl | unit_byte |
| UNITS | 3 | buflen | unit_byte |
| UNITS | 4 | skip | unit_byte |
drivers/staging/greybus/sdio.c _gb_sdio_recv() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 2 | buf | 4096-ptr_max |
| PARAM_VALUE | 2 | *buf | 0-255 |
| PARAM_VALUE | 3 | buflen | 0-s32max |
| PARAM_VALUE | 4 | skip | 0-s64max |
| CAPPED_DATA | 3 | buflen | 1 |
| CAPPED_DATA | 3 | buflen | 1 |
| DATA_SOURCE | 3 | buflen | $2 |
| DATA_SOURCE | 4 | skip | $4 |
| FUZZY_MAX | 4 | skip | 0 |
| UNITS | 0 | sgl | unit_byte |
| UNITS | 1 | nents | unit_array_size |
| UNITS | 3 | buflen | unit_byte |
| LOCK2 | &host->lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct gb_sdio_host)->lock |
drivers/crypto/ti/dthev2-aes.c dthe_aead_enc_get_tag() -> sg_pcopy_from_buffer()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | nents | 0-s32max,4294967274 |
| PARAM_VALUE | 2 | buf | 4218671455399796736 |
| PARAM_VALUE | 4 | skip | 0-4294967295 |
| BUF_SIZE | 2 | buf | 16 |
| DATA_SOURCE | 1 | nents | r sg_nents_for_len |
| NOCHECK_CALL | |||
| UNITS | 0 | sgl | unit_byte |
| UNITS | 3 | buflen | unit_byte |
| UNITS | 4 | skip | unit_byte |