Defined in 3 files as a function:
- drivers/dax/device.c, line 53 (as a function)
- drivers/dma/idxd/cdev.c, line 371 (as a function)
- tools/testing/selftests/bpf/progs/find_vma.c, line 23 (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 |