Defined in 1 files as a function:
Referenced in 1 files:
Smatch caller information:
drivers/iommu/iommufd/pages.c iopt_pages_fill_xarray() -> pfn_reader_user_destroy()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | user | 8931018345647517696 |
| PARAM_VALUE | 0 | user->gup_flags | 256-257 |
| PARAM_VALUE | 0 | user->locked | (-1)-1 |
| PARAM_VALUE | 0 | user->ufolios | 0,4096-ptr_max |
| PARAM_VALUE | 0 | user->upages | 0 |
| PARAM_VALUE | 1 | pages | 4096-ptr_max |
| PARAM_VALUE | 1 | pages->mutex.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | pages->mutex.first_waiter | 0,4096-ptr_max |
| PARAM_VALUE | 1 | pages->mutex.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 1 | pages->mutex.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 1 | pages->mutex.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | pages->mutex.wait_lock.owner | (-1) |
| PARAM_VALUE | 1 | pages->mutex.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 1 | pages->source_mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 1 | pages->source_mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | pages->type | 0-1,3-u32max |
| DATA_SOURCE | 1 | pages | $0 |
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 1 | pages->npinned | |
| LOCK2 | &access->ioas_lock | ||
| LOCK2 | &iopt->iova_rwsem | ||
| LOCK2 | 1 | &pages->mutex | |
| HALF_LOCKED2 | &staccess->lock | ||
| HALF_LOCKED2 | &vgpu->cache_lock | ||
| TYPE_LOCK | (struct io_pagetable)->iova_rwsem | ||
| TYPE_LOCK | (struct iommufd_access)->ioas_lock | ||
| TYPE_LOCK | (struct iopt_pages)->mutex |
drivers/iommu/iommufd/pages.c iopt_pages_fill_xarray() -> pfn_reader_user_destroy()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | user | 8931018345647517696 |
| PARAM_VALUE | 0 | user->gup_flags | 256-257 |
| PARAM_VALUE | 0 | user->locked | (-1)-1 |
| PARAM_VALUE | 0 | user->ufolios | 0,4096-ptr_max |
| PARAM_VALUE | 0 | user->upages | 0 |
| PARAM_VALUE | 1 | pages | 4096-ptr_max |
| PARAM_VALUE | 1 | pages->mutex.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | pages->mutex.first_waiter | 0,4096-ptr_max |
| PARAM_VALUE | 1 | pages->mutex.first_waiter->list.prev->next | 5159360019465732096 |
| PARAM_VALUE | 1 | pages->mutex.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 1 | pages->mutex.wait_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 1 | pages->mutex.wait_lock.owner | (-1) |
| PARAM_VALUE | 1 | pages->mutex.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 1 | pages->source_mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 1 | pages->source_mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | pages->type | 0-1,3-u32max |
| DATA_SOURCE | 1 | pages | $0 |
| NOCHECK_CALL | |||
| NO_OVERFLOW_SIMPLE | 1 | pages->npinned | |
| LOCK2 | &access->ioas_lock | ||
| LOCK2 | &iopt->iova_rwsem | ||
| LOCK2 | 1 | &pages->mutex | |
| HALF_LOCKED2 | &staccess->lock | ||
| HALF_LOCKED2 | &vgpu->cache_lock | ||
| TYPE_LOCK | (struct io_pagetable)->iova_rwsem | ||
| TYPE_LOCK | (struct iommufd_access)->ioas_lock | ||
| TYPE_LOCK | (struct iopt_pages)->mutex |
drivers/iommu/iommufd/pages.c pfn_reader_destroy() -> pfn_reader_user_destroy()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | user | 5386030719981474008,6270772229982597336,8717662312254873816 |
| PARAM_VALUE | 0 | user->gup_flags | 256-257 |
| PARAM_VALUE | 0 | user->upages_end | 0-18446744073709551614 |
| PARAM_VALUE | 1 | pages | 4096-ptr_max |
| PARAM_VALUE | 1 | pages->source_mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 1 | pages->source_mm->mmap_lock.first_waiter->type | 0-1 |
| PARAM_VALUE | 1 | pages->type | 0-1,3-u32max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &access->ioas_lock | ||
| HALF_LOCKED2 | &ioas->mutex | ||
| HALF_LOCKED2 | &iopt->domains_rwsem | ||
| HALF_LOCKED2 | &iopt->iova_rwsem | ||
| HALF_LOCKED2 | &pages->mutex | ||
| HALF_LOCKED2 | _T->lock |