Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/dax/bus.c __devm_create_dev_dax() -> alloc_dev_dax_range()

Type Parameter Key Value
PARAM_VALUE 0 dev_dax 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.devres_head.next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.devres_head.next->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.devres_head.prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.devres_head.prev->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.devres_head.prev->prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.dma_io_tlb_mem 1473117533515866112
PARAM_VALUE 0 dev_dax->dev.dma_io_tlb_mem->defpool.nareas 0-s32max
PARAM_VALUE 0 dev_dax->dev.dma_io_tlb_mem->dyn_alloc.data.counter 0,9007199250546704
PARAM_VALUE 0 dev_dax->dev.dma_io_tlb_mem->pools.next 0
PARAM_VALUE 0 dev_dax->dev.dma_io_tlb_mem->pools.prev 0,1473117533515866408
PARAM_VALUE 0 dev_dax->dev.dma_io_tlb_pools.next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.dma_io_tlb_pools.next->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.dma_io_tlb_pools.prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.dma_io_tlb_pools.prev->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.dma_io_tlb_pools.prev->prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.dma_pools.next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.dma_pools.next->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.dma_pools.prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.dma_pools.prev->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.dma_pools.prev->prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.dma_uses_io_tlb 0
PARAM_VALUE 0 dev_dax->dev.flags 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.kobj.entry.next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.kobj.entry.next->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.kobj.entry.prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.kobj.entry.prev->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.kobj.entry.prev->prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.kobj.kref.refcount.refs.counter 1
PARAM_VALUE 0 dev_dax->dev.kobj.kset 0,4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.kobj.ktype 5399513539053756416
PARAM_VALUE 0 dev_dax->dev.kobj.state_add_uevent_sent 0
PARAM_VALUE 0 dev_dax->dev.kobj.state_in_sysfs 0
PARAM_VALUE 0 dev_dax->dev.kobj.state_initialized 1
PARAM_VALUE 0 dev_dax->dev.links.consumers.next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.links.consumers.next->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.links.consumers.prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.links.consumers.prev->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.links.consumers.prev->prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.links.defer_sync.next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.links.defer_sync.next->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.links.defer_sync.prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.links.defer_sync.prev->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.links.defer_sync.prev->prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.links.status 0
PARAM_VALUE 0 dev_dax->dev.links.suppliers.next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.links.suppliers.next->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.links.suppliers.prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.links.suppliers.prev->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.links.suppliers.prev->prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.numa_node (-1)
PARAM_VALUE 0 dev_dax->dev.power.child_count.counter 0
PARAM_VALUE 0 dev_dax->dev.power.deferred_resume 0
PARAM_VALUE 0 dev_dax->dev.power.disable_depth 1
PARAM_VALUE 0 dev_dax->dev.power.early_init 1
PARAM_VALUE 0 dev_dax->dev.power.entry.next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.power.entry.next->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.power.entry.prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.power.entry.prev->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.power.entry.prev->prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.power.idle_notification 0
PARAM_VALUE 0 dev_dax->dev.power.ignore_children 0
PARAM_VALUE 0 dev_dax->dev.power.is_late_suspended 0
PARAM_VALUE 0 dev_dax->dev.power.is_noirq_suspended 0
PARAM_VALUE 0 dev_dax->dev.power.is_prepared 0
PARAM_VALUE 0 dev_dax->dev.power.is_suspended 0
PARAM_VALUE 0 dev_dax->dev.power.last_status (-1)
PARAM_VALUE 0 dev_dax->dev.power.needs_force_resume 0
PARAM_VALUE 0 dev_dax->dev.power.qos 0
PARAM_VALUE 0 dev_dax->dev.power.request 0
PARAM_VALUE 0 dev_dax->dev.power.request_pending 0
PARAM_VALUE 0 dev_dax->dev.power.runtime_auto 1
PARAM_VALUE 0 dev_dax->dev.power.runtime_error 0
PARAM_VALUE 0 dev_dax->dev.power.runtime_status 2
PARAM_VALUE 0 dev_dax->dev.power.timer_expires 0
PARAM_VALUE 0 dev_dax->dev.power.usage_count.counter 0
PARAM_VALUE 0 dev_dax->dev.power.wait_queue.head.next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.power.wait_queue.head.next->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.power.wait_queue.head.prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.power.wait_queue.head.prev->next 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.power.wait_queue.head.prev->prev 4096-ptr_max
PARAM_VALUE 0 dev_dax->dyn_id 1
PARAM_VALUE 0 dev_dax->id 0-s32max
PARAM_VALUE 0 dev_dax->region 4096-ptr_max
PARAM_VALUE 2 size 0
BUF_SIZE 0 dev_dax 1768
DATA_SOURCE 0 dev_dax r _kzalloc_noprof
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &dax_region_rwsem
HALF_LOCKED2 &of->mutex

drivers/dax/bus.c dev_dax_resize() -> alloc_dev_dax_range()

Type Parameter Key Value
PARAM_VALUE 0 dev_dax 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.driver 0
PARAM_VALUE 0 dev_dax->region 4096-ptr_max
PARAM_VALUE 0 dev_dax->region->dev 4096-ptr_max
PARAM_VALUE 0 dev_dax->region->dev->driver 1-u64max
PARAM_VALUE 2 size 1-u64max
CAPPED_DATA 0 dev_dax->nr_range 1
CAPPED_DATA 2 size 1
CAPPED_DATA 2 size 1
DATA_SOURCE 0 dev_dax $1
NOSPEC 2 size
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 size 1-u64max[c]
LOCK2 &of->mutex
LOCK2 global &dax_dev_rwsem
LOCK2 global &dax_region_rwsem
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/dax/bus.c dev_dax_resize() -> alloc_dev_dax_range()

Type Parameter Key Value
PARAM_VALUE 0 dev_dax 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.driver 0
PARAM_VALUE 0 dev_dax->region 4096-ptr_max
PARAM_VALUE 0 dev_dax->region->dev 4096-ptr_max
PARAM_VALUE 0 dev_dax->region->dev->driver 1-u64max
PARAM_VALUE 1 start 0-18446744073709551614
PARAM_VALUE 2 size 1-u64max
CAPPED_DATA 1 start 1
CAPPED_DATA 1 start 1
CAPPED_DATA 2 size 1
CAPPED_DATA 2 size 1
DATA_SOURCE 0 dev_dax $1
NOSPEC 2 size
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 size 1-s32max[c]
LOCK2 &of->mutex
LOCK2 global &dax_dev_rwsem
LOCK2 global &dax_region_rwsem
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/dax/bus.c dev_dax_resize() -> alloc_dev_dax_range()

Type Parameter Key Value
PARAM_VALUE 0 dev_dax 4096-ptr_max
PARAM_VALUE 0 dev_dax->dev.driver 0
PARAM_VALUE 0 dev_dax->region 4096-ptr_max
PARAM_VALUE 0 dev_dax->region->dev 4096-ptr_max
PARAM_VALUE 0 dev_dax->region->dev->driver 1-u64max
PARAM_VALUE 2 size 1-u64max
CAPPED_DATA 2 size 1
CAPPED_DATA 2 size 1
DATA_SOURCE 0 dev_dax $1
NOSPEC 2 size
RX_PATH
TASK_NOT_RUNNING
USER_DATA 2 size 1-s32max[c]
LOCK2 &of->mutex
LOCK2 global &dax_dev_rwsem
LOCK2 global &dax_region_rwsem
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

drivers/dax/bus.c mapping_store() -> alloc_dev_dax_range()

Type Parameter Key Value
PARAM_VALUE 0 dev_dax 4096-ptr_max
PARAM_VALUE 0 dev_dax->region 4096-ptr_max
PARAM_VALUE 0 dev_dax->region->dev 4096-ptr_max
PARAM_VALUE 0 dev_dax->region->dev->driver 1-u64max
DATA_SOURCE 0 dev_dax r to_dev_dax
DATA_SOURCE 2 size r range_len
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 start 0-u64max
NO_OVERFLOW_SIMPLE 1 start
LOCK2 &of->mutex
LOCK2 global &dax_dev_rwsem
LOCK2 global &dax_region_rwsem
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex