Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 3 files:

Smatch caller information:

kernel/dma/ops_helpers.c dma_common_alloc_pages() -> dma_free_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 dev->coherent_dma_mask 1-u64max
PARAM_VALUE 0 dev->dma_io_tlb_mem->can_grow 0-1
PARAM_VALUE 0 dev->flags 4096-ptr_max
PARAM_VALUE 0 dev->iommu_group->default_domain 0-s64max
PARAM_VALUE 1 page 1-u64max
PARAM_VALUE 2 size 0,4096-u64max
BUF_SIZE 1 page 0,4096-u64max
BUF_SIZE 1 page 0,4096-u64max
CAPPED_DATA 0 dev->cma_area->nranges 1
CAPPED_DATA 2 size 1
CAPPED_DATA 2 size 1
DATA_SOURCE 0 dev $0
DATA_SOURCE 2 size $1
BIT_INFO 2 size 0x0,0xfffffffffffff000
BIT_INFO 2 size 0x0,0xfffffffffffff000
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 2 size 0,4096-12884905984[c]
USER_DATA 2 size 0,4096-4294967296[c]
NO_OVERFLOW_SIMPLE 0 dev->cma_area->available_count
UNITS 0 dev unit_byte
UNITS 2 size unit_byte
BYTE_COUNT 1 ==page2 8050

kernel/dma/ops_helpers.c dma_common_free_pages() -> dma_free_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->cma_area->available_count 0-s64max
PARAM_VALUE 0 dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 dev->flags 4096-ptr_max
PARAM_VALUE 0 dev->iommu_group->default_domain 0-s64max
PARAM_VALUE 2 size 0,4096-u64max
BUF_SIZE 0 dev (-1),1616
BUF_SIZE 0 dev (-1),1616
CAPPED_DATA 2 size 1
CAPPED_DATA 2 size 1
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 page $2
DATA_SOURCE 2 size $1
BIT_INFO 2 size 0x0,0xfffffffffffff000
BIT_INFO 2 size 0x0,0xfffffffffffff000
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 2 size 0,4096-u64max[c]
USER_DATA 2 size 0,4096-4294967296[c]
NO_OVERFLOW_SIMPLE 0 dev->cma_area->available_count
UNITS 0 dev unit_byte
UNITS 2 size unit_byte

drivers/iommu/dma-iommu.c __iommu_dma_free() -> dma_free_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 dev->flags 4096-ptr_max
PARAM_VALUE 0 dev->iommu_group 4096-ptr_max
PARAM_VALUE 1 page 1-u64max
PARAM_VALUE 2 size 0,4096-u64max
CAPPED_DATA 0 dev 1
DATA_SOURCE 0 dev $0
BIT_INFO 2 size 0x0,0xfffffffffffff000
BIT_INFO 2 size 0x0,0xfffffffffffff000
NOCHECK_CALL
UNITS 2 size unit_byte

drivers/iommu/dma-iommu.c iommu_dma_alloc_pages() -> dma_free_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 dev->dma_mem 0
PARAM_VALUE 0 dev->flags 4096-ptr_max
PARAM_VALUE 1 page 1-u64max
PARAM_VALUE 2 size 0,4096-u64max
BUF_SIZE 1 page 0,4096-u64max
BUF_SIZE 1 page 0,4096-u64max
DATA_SOURCE 0 dev $0
BIT_INFO 2 size 0x0,0xfffffffffffff000
BIT_INFO 2 size 0x0,0xfffffffffffff000
NOCHECK_CALL

kernel/dma/direct.c __dma_direct_alloc_pages() -> dma_free_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->cma_area 0,4096-ptr_max
PARAM_VALUE 0 dev->cma_area->alloc_mutex.dep_map->name 0-255
PARAM_VALUE 0 dev->cma_area->alloc_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->cma_area->alloc_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 dev->cma_area->alloc_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->cma_area->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 dev->dma_io_tlb_mem 4096-ptr_max
PARAM_VALUE 0 dev->dma_io_tlb_mem->for_alloc 0
PARAM_VALUE 0 dev->dma_range_map 0,4096-ptr_max
PARAM_VALUE 0 dev->flags 4096-ptr_max
PARAM_VALUE 1 page 1-u64max
PARAM_VALUE 2 size 0,4096-u64max
BUF_SIZE 1 page 0,4096-u64max
BUF_SIZE 1 page 0,4096-u64max
CAPPED_DATA 0 dev->cma_area->nranges 1
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 page r dma_alloc_contiguous
DATA_SOURCE 2 size $1
BIT_INFO 2 size 0x0,0xfffffffffffff000
BIT_INFO 2 size 0x0,0xfffffffffffff000
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 2 size 0,4096-12884905984[c]
USER_DATA 2 size 0,4096-4294967296[c]
NO_OVERFLOW_SIMPLE 0 dev->cma_area->available_count
UNITS 0 dev unit_byte
UNITS 2 size unit_byte
BYTE_COUNT 1 ==page2 8050

kernel/dma/direct.c dma_direct_alloc() -> dma_free_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->cma_area->alloc_mutex.dep_map->name 0-255
PARAM_VALUE 0 dev->cma_area->alloc_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 dev->cma_area->alloc_mutex.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 dev->cma_area->alloc_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 dev->cma_area->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 dev->dma_io_tlb_mem 4096-ptr_max
PARAM_VALUE 0 dev->dma_mem 0
PARAM_VALUE 0 dev->dma_range_map 0,4096-ptr_max
PARAM_VALUE 0 dev->flags 4096-ptr_max
PARAM_VALUE 1 page 1-u64max
PARAM_VALUE 2 size 0,4096-u64max
BUF_SIZE 1 page s32min-s32max
DATA_SOURCE 0 dev $0
BIT_INFO 2 size 0x0,0xfffffffffffff000
BIT_INFO 2 size 0x0,0xfffffffffffff000
NOCHECK_CALL

kernel/dma/direct.c dma_direct_free() -> dma_free_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 dev->dma_io_tlb_mem 4096-ptr_max
PARAM_VALUE 0 dev->dma_io_tlb_mem->for_alloc 0
PARAM_VALUE 0 dev->flags 4096-ptr_max
PARAM_VALUE 1 page 1-u64max
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 page $2
DATA_SOURCE 2 size $1
NOCHECK_CALL

kernel/dma/direct.c dma_direct_free() -> dma_free_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 dev->dma_io_tlb_mem 4096-ptr_max
PARAM_VALUE 0 dev->dma_range_map 0,4096-ptr_max
PARAM_VALUE 0 dev->flags 4096-ptr_max
DATA_SOURCE 0 dev $0
DATA_SOURCE 2 size $1
NOCHECK_CALL

kernel/dma/direct.c dma_direct_free_pages() -> dma_free_contiguous()

Type Parameter Key Value
PARAM_VALUE 0 dev 4096-ptr_max
PARAM_VALUE 0 dev->cma_area->available_count 0-s64max
PARAM_VALUE 0 dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 dev->flags 4096-ptr_max
PARAM_VALUE 0 dev->iommu_group->default_domain 0-s64max
PARAM_VALUE 2 size 0,4096-u64max
BUF_SIZE 0 dev (-1),1616
BUF_SIZE 0 dev (-1),1616
DATA_SOURCE 0 dev $0
DATA_SOURCE 1 page $2
DATA_SOURCE 2 size $1
BIT_INFO 2 size 0x0,0xfffffffffffff000
BIT_INFO 2 size 0x0,0xfffffffffffff000
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 2 size 0,4096-u64max[c]
USER_DATA 2 size 0,4096-4294967296[c]
NO_OVERFLOW_SIMPLE 0 dev->cma_area->available_count
UNITS 0 dev unit_byte
UNITS 2 size unit_byte