Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/xen/gntdev.c gntdev_ioctl_map_grant_ref() -> gntdev_add_map()

Type Parameter Key Value
PARAM_VALUE 0 priv->dma_dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 priv->lock.dep_map->name 0-255
PARAM_VALUE 0 priv->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 priv->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 priv->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 priv->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 priv->lock.wait_lock.owner (-1)
PARAM_VALUE 0 priv->lock.wait_lock.owner_cpu u32max
PARAM_VALUE 1 add 4096-ptr_max
PARAM_VALUE 1 add->being_removed 16,4096-ptr_max
PARAM_VALUE 1 add->count 1-65536
PARAM_VALUE 1 add->dma_flags 0
PARAM_VALUE 1 add->grants 4096-ptr_max
PARAM_VALUE 1 add->index 0
PARAM_VALUE 1 add->map_ops 4096-ptr_max
PARAM_VALUE 1 add->pages 16,4096-ptr_max
PARAM_VALUE 1 add->unmap_ops 4096-ptr_max
PARAM_VALUE 1 add->users.refs.counter 1
PARAM_VALUE 1 *add->pages 4096-ptr_max
BUF_SIZE 0 priv s32min-(-2),1-s32max
BUF_SIZE 0 priv s32min-(-2),1-s32max
BUF_SIZE 1 add 496
CAPPED_DATA 0 &priv->lock 1
CAPPED_DATA 1 add->count 1
DATA_SOURCE 0 priv $0
DATA_SOURCE 1 add r gntdev_alloc_map
NOSPEC 1 add->count
NOCHECK_CALL
USER_DATA 1 add->count 2-65536[c]
USER_DATA 1 add->dma_flags 0
USER_DATA 1 add->grants->domid 0-u32max
USER_DATA 1 add->grants->ref 0-u32max
NO_OVERFLOW_SIMPLE 1 add->count
USER_PTR 1 add->grants
LOCK2 0 &priv->lock
TYPE_LOCK (struct gntdev_priv)->lock

drivers/xen/gntdev-dmabuf.c dmabuf_exp_from_refs() -> gntdev_add_map()

Type Parameter Key Value
PARAM_VALUE 0 priv->dma_dev->cma_area->nranges s32min-s32max
PARAM_VALUE 0 priv->lock.dep_map->name 0-255
PARAM_VALUE 0 priv->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 priv->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 priv->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 priv->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 priv->lock.wait_lock.owner (-1)
PARAM_VALUE 0 priv->lock.wait_lock.owner_cpu u32max
PARAM_VALUE 1 add 4096-ptr_max
PARAM_VALUE 1 add->being_removed 16,4096-ptr_max
PARAM_VALUE 1 add->count 1-65536
PARAM_VALUE 1 add->grants 4096-ptr_max
PARAM_VALUE 1 add->index 0
PARAM_VALUE 1 add->map_ops 4096-ptr_max
PARAM_VALUE 1 add->pages 16,4096-ptr_max
PARAM_VALUE 1 add->unmap_ops 4096-ptr_max
PARAM_VALUE 1 add->users.refs.counter 1
PARAM_VALUE 1 *add->pages 4096-ptr_max
BUF_SIZE 0 priv s32min-(-2),1-s32max
BUF_SIZE 0 priv s32min-(-2),1-s32max
BUF_SIZE 1 add 496
CAPPED_DATA 0 &priv->lock 1
CAPPED_DATA 1 add->count 1
DATA_SOURCE 0 priv $0
DATA_SOURCE 1 add r dmabuf_exp_alloc_backing_storage
NOSPEC 1 add->count
NOCHECK_CALL
USER_DATA 1 add->count 2-65536[c]
USER_DATA 1 add->dma_flags s32min-s32max
NO_OVERFLOW_SIMPLE 1 add->count
LOCK2 0 &priv->lock
TYPE_LOCK (struct gntdev_priv)->lock