Defined in 1 files as a function:
Referenced in 18 files:
- drivers/net/ethernet/cavium/thunder/nicvf_queues.c
- drivers/net/ethernet/cortina/gemini.c, line 911
- drivers/net/ethernet/fungible/funeth/funeth_rx.c, line 42
- drivers/net/ethernet/google/gve/gve_buffer_mgmt_dqo.c, line 152
- drivers/net/ethernet/google/gve/gve_rx.c
- drivers/net/ethernet/google/gve/gve_utils.c, line 104
- drivers/net/ethernet/hisilicon/hns3/hns3_enet.c
- drivers/net/ethernet/intel/i40e/i40e_txrx.c
- drivers/net/ethernet/intel/igb/igb_main.c
- drivers/net/ethernet/intel/igc/igc_main.c
- drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
- drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c, line 834
- drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c
- drivers/net/ethernet/sun/niu.c, line 3346
- include/linux/page_ref.h, line 145
- kernel/bpf/arena.c, line 536
- mm/page_frag_cache.c, line 112
- net/core/net_test.c, line 171
Smatch caller information:
drivers/net/ethernet/google/gve/gve_rx.c gve_rx_prefill_pages() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 1 | nr | 2147483646 |
| DATA_SOURCE | 0 | page | r alloc_pages_node_noprof |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/net/ethernet/google/gve/gve_rx.c gve_setup_rx_buffer() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | nr | 2147483646 |
| DATA_SOURCE | 0 | page | $3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/net/ethernet/fungible/funeth/funeth_rx.c refresh_refs() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 1 | nr | 1000000 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
mm/huge_memory.c folio_ref_add() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | nr | 511 |
| DATA_SOURCE | 1 | nr | $1 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &vma->vm_private_data->rw_sema | ||
| HALF_LOCKED2 | ptl |
drivers/net/ethernet/cortina/gemini.c geth_fill_freeq() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 0 | page->_refcount.counter | s32min-1 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &geth->freeq_lock | ||
| LOCK2 | flags | ||
| TYPE_LOCK | (struct gemini_ethernet)->freeq_lock |
drivers/net/ethernet/google/gve/gve_utils.c gve_dec_pagecnt_bias() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read |
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c hns3_alloc_buffer() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 1 | nr | 65534 |
| DATA_SOURCE | 0 | page | r __dev_alloc_pages_noprof |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/net/ethernet/hisilicon/hns3/hns3_enet.c hns3_nic_reuse_page() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 1 | nr | u16max |
| BUF_SIZE | 0 | page | 1-s32max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | page | unit_byte |
net/core/net_test.c gso_test_func() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 0 | page->_refcount.counter | 1 |
| DATA_SOURCE | 0 | page | r alloc_pages_noprof |
| NOCHECK_CALL |
mm/shmem.c folio_ref_add() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| DATA_SOURCE | 1 | nr | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/net/ethernet/intel/igc/igc_main.c igc_alloc_mapped_page() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 1 | nr | 65534 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/net/ethernet/intel/igc/igc_main.c igc_can_reuse_rx_page() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 0 | page->flags.f | 0-18446744073709551614 |
| PARAM_VALUE | 1 | nr | 65534 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read |
drivers/net/ethernet/sun/niu.c niu_rbr_add_page() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 0 | page->_refcount.counter | 1 |
| PARAM_VALUE | 0 | page->private | 0-18446744073709551614 |
| PARAM_VALUE | 1 | nr | 1-65534 |
| DATA_SOURCE | 0 | page | r alloc_pages_noprof |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
mm/filemap.c folio_ref_add() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| DATA_SOURCE | 1 | nr | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | rcu_read | ||
| HALF_LOCKED2 | vmf->ptl |
mm/page_frag_cache.c __page_frag_alloc_align() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 0 | page->_refcount.counter | 1 |
| PARAM_VALUE | 0 | page->flags.f | 0-18446744073709551614 |
| PARAM_VALUE | 0 | page->lru.next | 0,2 |
| PARAM_VALUE | 0 | page->private | 0 |
| PARAM_VALUE | 1 | nr | 32768 |
| DATA_SOURCE | 0 | page | r __page_frag_cache_refill |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &call->conn->tx_data_alloc_lock | ||
| HALF_LOCKED2 | &vq->mutex | ||
| HALF_LOCKED2 | &xprt->xpt_mutex |
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c ixgbe_alloc_mapped_page() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 1 | nr | 65534 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c ixgbe_can_reuse_rx_page() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 0 | page->flags.f | 0-18446744073709551614 |
| PARAM_VALUE | 1 | nr | 65534 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read |
drivers/net/ethernet/intel/igb/igb_main.c igb_alloc_mapped_page() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 1 | nr | 65534 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/net/ethernet/intel/igb/igb_main.c igb_can_reuse_rx_page() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 0 | page->flags.f | 0-18446744073709551614 |
| PARAM_VALUE | 1 | nr | 65534 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read |
mm/memory.c folio_ref_add() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| DATA_SOURCE | 1 | nr | $1 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 1 | nr | unit_page |
| HALF_LOCKED2 | &mm->mmap_lock | ||
| HALF_LOCKED2 | &oldmm->mmap_lock | ||
| HALF_LOCKED2 | dst_ptl | ||
| HALF_LOCKED2 | rcu_read | ||
| HALF_LOCKED2 | src_ptl | ||
| HALF_LOCKED2 | vmf->ptl |
drivers/net/ethernet/cavium/thunder/nicvf_queues.c nicvf_alloc_page() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 1 | nr | 256 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/net/ethernet/cavium/thunder/nicvf_queues.c nicvf_alloc_page() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 1 | nr | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/net/ethernet/cavium/thunder/nicvf_queues.c nicvf_get_page() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 1-u64max |
| PARAM_VALUE | 1 | nr | 1-u16max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/net/ethernet/google/gve/gve_buffer_mgmt_dqo.c gve_alloc_qpl_page_dqo() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | nr | 2147483646 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/bpf/arena.c arena_vm_fault() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 1 | nr | 1 |
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | flags |
mm/gup.c folio_ref_add() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| DATA_SOURCE | 1 | nr | $1 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| USER_DATA | 1 | nr | 2-268434432[c] |
| UNITS | 1 | nr | unit_page |
| HALF_LOCKED2 | flags |
mm/migrate.c folio_ref_add() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| DATA_SOURCE | 1 | nr | $1 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | irq | ||
| HALF_LOCKED2 | &((&xas)->xa)->xa_lock |
mm/khugepaged.c folio_ref_add() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 1 | nr | 511 |
| DATA_SOURCE | 1 | nr | $1 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| LOCK2 | &((&xas)->xa)->xa_lock | ||
| LOCK2 | irq | ||
| HALF_LOCKED2 | &mm->mmap_lock |
drivers/net/ethernet/intel/i40e/i40e_txrx.c i40e_alloc_mapped_page() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 1 | nr | 65534 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/net/ethernet/intel/i40e/i40e_txrx.c i40e_can_reuse_rx_page() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 0 | page->flags.f | 0-18446744073709551614 |
| PARAM_VALUE | 1 | nr | 65534 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read |
drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c mlx5e_ktls_tx_handle_ooo() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &netdev->tx_global_lock | ||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | rcu_read |
drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c mlx5e_ktls_tx_handle_ooo() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &netdev->tx_global_lock | ||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | flags | ||
| HALF_LOCKED2 | rcu_read |
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c ixgbevf_can_reuse_rx_page() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| PARAM_VALUE | 0 | page->flags.f | 0-18446744073709551614 |
| PARAM_VALUE | 1 | nr | u16max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu_read |
mm/swap_state.c folio_ref_add() -> page_ref_add()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | page | 4096-ptr_max |
| DATA_SOURCE | 1 | nr | $1 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| HALF_LOCKED2 | &ci->lock |