Defined in 3 files as a function:

Referenced in 3 files:

Smatch caller information:

drivers/dax/device.c __dev_dax_pmd_fault() -> check_vma()

Type Parameter Key Value
PARAM_VALUE 1 vma 4096-ptr_max
PARAM_VALUE 1 vma->vm_file 4096-ptr_max
PARAM_VALUE 1 vma->vm_mm->mmap_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 1 vma->vm_mm->mmap_lock.first_waiter->type 0-1
PARAM_VALUE 1 vma->vm_mm->vma_writer_wait.task->sched_class->uclamp_enabled 0-1
PARAM_VALUE 1 vma->vm_ops 4096-ptr_max
PARAM_VALUE 1 vma->vm_ops->huge_fault 1-u64max
PARAM_VALUE 2 func 7470923456576430080
BUF_SIZE 0 dev_dax s32min-(-2),1-s32max
BUF_SIZE 0 dev_dax s32min-(-2),1-s32max
BUF_SIZE 1 vma (-1),1-s32max
BUF_SIZE 1 vma (-1),1-s32max
BUF_SIZE 2 func 20
CAPPED_DATA 1 vma 1
DATA_SOURCE 0 dev_dax $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 vma->vm_end
NO_OVERFLOW_SIMPLE 1 vma->vm_pgoff
NO_OVERFLOW_SIMPLE 1 vma->vm_start
LOCK2 global &dax_srcu
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &pool->lock

drivers/dax/device.c __dev_dax_pte_fault() -> check_vma()

Type Parameter Key Value
PARAM_VALUE 1 vma 4096-ptr_max
PARAM_VALUE 1 vma->vm_file 4096-ptr_max
PARAM_VALUE 1 vma->vm_mm->mmap_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 1 vma->vm_mm->mmap_lock.first_waiter->type 0-1
PARAM_VALUE 1 vma->vm_mm->vma_writer_wait.task->kcov->mode 0-4294967295
PARAM_VALUE 1 vma->vm_mm->vma_writer_wait.task->kcov->remote 0-1
PARAM_VALUE 1 vma->vm_mm->vma_writer_wait.task->kcov->remote_size 0-4294967295
PARAM_VALUE 1 vma->vm_mm->vma_writer_wait.task->kcov_remote->mode 0-4294967295
PARAM_VALUE 1 vma->vm_mm->vma_writer_wait.task->kcov_remote->remote 0-1
PARAM_VALUE 1 vma->vm_mm->vma_writer_wait.task->kcov_remote->remote_size 0-4294967295
PARAM_VALUE 1 vma->vm_mm->vma_writer_wait.task->ptracer_cred->thread_keyring->user->qnkeys s32min-s32max
PARAM_VALUE 1 vma->vm_mm->vma_writer_wait.task->sched_class->uclamp_enabled 0-1
PARAM_VALUE 1 vma->vm_mm->vma_writer_wait.task->sched_task_group->idle s32min-s32max
PARAM_VALUE 1 vma->vm_mm->vma_writer_wait.task->thread_pid->attr->exit_code s32min-s32max
PARAM_VALUE 2 func 611688161006903296
BUF_SIZE 0 dev_dax s32min-(-2),1-s32max
BUF_SIZE 0 dev_dax s32min-(-2),1-s32max
BUF_SIZE 2 func 20
CAPPED_DATA 1 vma 1
DATA_SOURCE 0 dev_dax $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 vma->vm_end
NO_OVERFLOW_SIMPLE 1 vma->vm_pgoff
NO_OVERFLOW_SIMPLE 1 vma->vm_start
LOCK2 global &dax_srcu

drivers/dax/device.c __dev_dax_pud_fault() -> check_vma()

Type Parameter Key Value
PARAM_VALUE 1 vma 4096-ptr_max
PARAM_VALUE 1 vma->vm_file 4096-ptr_max
PARAM_VALUE 1 vma->vm_mm->mmap_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 1 vma->vm_mm->mmap_lock.first_waiter->type 0-1
PARAM_VALUE 1 vma->vm_mm->vma_writer_wait.task->sched_class->uclamp_enabled 0-1
PARAM_VALUE 1 vma->vm_ops 4096-ptr_max
PARAM_VALUE 1 vma->vm_ops->huge_fault 1-u64max
PARAM_VALUE 2 func 8162813049624563712
BUF_SIZE 0 dev_dax s32min-(-2),1-s32max
BUF_SIZE 0 dev_dax s32min-(-2),1-s32max
BUF_SIZE 1 vma (-1),1-s32max
BUF_SIZE 1 vma (-1),1-s32max
BUF_SIZE 2 func 20
CAPPED_DATA 1 vma 1
DATA_SOURCE 0 dev_dax $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 vma->vm_end
NO_OVERFLOW_SIMPLE 1 vma->vm_pgoff
NO_OVERFLOW_SIMPLE 1 vma->vm_start
LOCK2 global &dax_srcu
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &pool->lock

drivers/dma/idxd/cdev.c idxd_cdev_mmap() -> check_vma()

Type Parameter Key Value
PARAM_VALUE 0 dev_dax 4096-ptr_max
PARAM_VALUE 0 dev_dax->idxd 4096-ptr_max
PARAM_VALUE 2 func 758488957539840000
BUF_SIZE 1 vma (-1)-s32max
BUF_SIZE 1 vma (-1)-s32max
BUF_SIZE 1 vma->vm_file (-1)-s32max
BUF_SIZE 1 vma->vm_private_data (-1),1-s32max
BUF_SIZE 2 func 15
DATA_SOURCE 1 vma $1
NOSPEC 1 vma->vm_pgoff
NOSPEC 1 vma->vm_start
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 vma->vm_end 4096-u64max[c]
USER_DATA 1 vma->vm_pgoff 0-4503599627370495[c]
USER_DATA 1 vma->vm_start 0-18446744073709547520
NO_OVERFLOW_SIMPLE 1 vma->vm_pgoff
HALF_LOCKED2 &ipcp->lock