Defined in 1 files as a function:
Referenced in 1 files:
Smatch caller information:
mm/gup.c __get_user_pages() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | folio | 4096-ptr_max |
| PARAM_VALUE | 1 | refs | 1 |
| DATA_SOURCE | 0 | folio | r _compound_head |
| DATA_SOURCE | 2 | flags | $3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 2 | flags | 0-u32max |
| HALF_LOCKED2 | &mm->mmap_lock |
mm/gup.c gup_fast_pmd_leaf() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | folio | 1-u64max |
| PARAM_VALUE | 2 | flags | 2-2097150 |
| DATA_SOURCE | 0 | folio | r try_grab_folio_fast |
| DATA_SOURCE | 2 | flags | $4 |
| BIT_INFO | 2 | flags | 0x0,0x18152b |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 2 | flags | 2-2097150 |
| UNITS | 1 | refs | unit_page |
| LOCK2 | flags |
mm/gup.c gup_fast_pmd_leaf() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | folio | 1-u64max |
| PARAM_VALUE | 2 | flags | 2-2097150 |
| DATA_SOURCE | 0 | folio | r try_grab_folio_fast |
| DATA_SOURCE | 2 | flags | $4 |
| BIT_INFO | 2 | flags | 0x0,0x18152b |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 2 | flags | 2-2097150 |
| UNITS | 1 | refs | unit_page |
| LOCK2 | flags |
mm/gup.c gup_fast_pmd_leaf() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | folio | 1-u64max |
| PARAM_VALUE | 2 | flags | 2-2097150 |
| DATA_SOURCE | 0 | folio | r try_grab_folio_fast |
| DATA_SOURCE | 2 | flags | $4 |
| BIT_INFO | 2 | flags | 0x0,0x18152b |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 2 | flags | 2-2097150 |
| UNITS | 1 | refs | unit_page |
| LOCK2 | flags |
mm/gup.c gup_fast_pte_range() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | folio | 1-u64max |
| PARAM_VALUE | 1 | refs | 1 |
| PARAM_VALUE | 2 | flags | 2-2097150 |
| DATA_SOURCE | 0 | folio | r try_grab_folio_fast |
| DATA_SOURCE | 2 | flags | $4 |
| BIT_INFO | 2 | flags | 0x0,0x18152b |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 2 | flags | 2-2097150 |
| LOCK2 | flags | ||
| LOCK2 | rcu_read |
mm/gup.c gup_fast_pte_range() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | folio | 1-u64max |
| PARAM_VALUE | 1 | refs | 1 |
| PARAM_VALUE | 2 | flags | 2-2097150 |
| DATA_SOURCE | 0 | folio | r try_grab_folio_fast |
| DATA_SOURCE | 2 | flags | $4 |
| BIT_INFO | 2 | flags | 0x0,0x18152b |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 2 | flags | 2-2097150 |
| LOCK2 | flags | ||
| LOCK2 | rcu_read |
mm/gup.c gup_fast_pte_range() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | folio | 1-u64max |
| PARAM_VALUE | 1 | refs | 1 |
| PARAM_VALUE | 2 | flags | 2-2097150 |
| DATA_SOURCE | 0 | folio | r try_grab_folio_fast |
| DATA_SOURCE | 2 | flags | $4 |
| BIT_INFO | 2 | flags | 0x0,0x18152b |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 2 | flags | 2-2097150 |
| LOCK2 | flags | ||
| LOCK2 | rcu_read |
mm/gup.c gup_fast_pud_leaf() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | folio | 1-u64max |
| PARAM_VALUE | 2 | flags | 2-2097150 |
| DATA_SOURCE | 0 | folio | r try_grab_folio_fast |
| DATA_SOURCE | 2 | flags | $4 |
| BIT_INFO | 2 | flags | 0x0,0x18152b |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 2 | flags | 2-2097150 |
| UNITS | 1 | refs | unit_page |
| LOCK2 | flags |
mm/gup.c gup_fast_pud_leaf() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | folio | 1-u64max |
| PARAM_VALUE | 2 | flags | 2-2097150 |
| DATA_SOURCE | 0 | folio | r try_grab_folio_fast |
| DATA_SOURCE | 2 | flags | $4 |
| BIT_INFO | 2 | flags | 0x0,0x18152b |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 2 | flags | 2-2097150 |
| UNITS | 1 | refs | unit_page |
| LOCK2 | flags |
mm/gup.c gup_fast_pud_leaf() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | folio | 1-u64max |
| PARAM_VALUE | 2 | flags | 2-2097150 |
| DATA_SOURCE | 0 | folio | r try_grab_folio_fast |
| DATA_SOURCE | 2 | flags | $4 |
| BIT_INFO | 2 | flags | 0x0,0x18152b |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 2 | flags | 2-2097150 |
| UNITS | 1 | refs | unit_page |
| LOCK2 | flags |
mm/gup.c gup_fast_unpin_user_pages() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 2 | flags | 524288 |
| DATA_SOURCE | 0 | folio | r gup_folio_next |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
mm/gup.c migrate_longterm_unpinnable_folios() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | folio | 4096-ptr_max |
| PARAM_VALUE | 0 | folio->pgmap->type | 2 |
| PARAM_VALUE | 1 | refs | 1 |
| PARAM_VALUE | 2 | flags | 524288 |
| DATA_SOURCE | 0 | folio | r pofs_get_folio |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
mm/gup.c unpin_folio() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | refs | 1 |
| PARAM_VALUE | 2 | flags | 524288 |
| DATA_SOURCE | 0 | folio | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | _T->lock |
mm/gup.c unpin_folios() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | folio | 1-u64max |
| PARAM_VALUE | 2 | flags | 524288 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &inode->i_rwsem | ||
| HALF_LOCKED2 | _T->lock |
mm/gup.c unpin_user_folio() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 2 | flags | 524288 |
| DATA_SOURCE | 0 | folio | $0 |
| DATA_SOURCE | 1 | refs | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 1 | refs | unit_page |
| HALF_LOCKED2 | &ctx->uring_lock |
mm/gup.c unpin_user_page() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | refs | 1 |
| PARAM_VALUE | 2 | flags | 524288 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | folio | unit_page |
| HALF_LOCKED2 | &access->ioas_lock | ||
| HALF_LOCKED2 | &db_tab->mutex | ||
| HALF_LOCKED2 | &dev->mm->mmap_lock | ||
| HALF_LOCKED2 | &dev->mutex | ||
| HALF_LOCKED2 | &iopt->iova_rwsem | ||
| HALF_LOCKED2 | &vm->regions_mapping_lock | ||
| HALF_LOCKED2 | ptl | ||
| HALF_LOCKED2 | sk |
mm/gup.c unpin_user_page_range_dirty_lock() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | folio | 4096-ptr_max |
| PARAM_VALUE | 2 | flags | 524288 |
| DATA_SOURCE | 0 | folio | r gup_folio_range_next |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | refs | 1-s32max[c] |
mm/gup.c unpin_user_pages() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 2 | flags | 524288 |
| DATA_SOURCE | 0 | folio | r gup_folio_next |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &STp->lock | ||
| HALF_LOCKED2 | &access->ioas_lock | ||
| HALF_LOCKED2 | &ctx->uring_lock | ||
| HALF_LOCKED2 | &dev->domain_lock | ||
| HALF_LOCKED2 | &dev->mm->mmap_lock | ||
| HALF_LOCKED2 | &dev->mutex | ||
| HALF_LOCKED2 | &etnaviv_obj->lock | ||
| HALF_LOCKED2 | &iopt->iova_rwsem | ||
| HALF_LOCKED2 | &itv->udma.lock | ||
| HALF_LOCKED2 | &pages->mutex | ||
| HALF_LOCKED2 | &service->bulk_mutex | ||
| HALF_LOCKED2 | _T->lock |
mm/gup.c unpin_user_pages_dirty_lock() -> gup_put_folio()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | folio | 4096-ptr_max |
| PARAM_VALUE | 2 | flags | 524288 |
| DATA_SOURCE | 0 | folio | r gup_folio_next |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &STp->lock | ||
| HALF_LOCKED2 | &dev->domain_lock | ||
| HALF_LOCKED2 | &mm->mm->mmap_lock | ||
| HALF_LOCKED2 | &pipe->lock |