Documented in 1 files:

Defined in 1 files as a function:

Referenced in 20 files:

Smatch caller information:

drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c bnxt_rx_xdp() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 0 pool->mp_priv->fired_notifs 0-4294967295
PARAM_VALUE 0 pool->p.dev->dma_io_tlb_pools.next->prev 4096-ptr_max
PARAM_VALUE 0 pool->p.dev->dma_io_tlb_pools.next->prev->prev 4096-ptr_max
DATA_SOURCE 1 page $4
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c bnxt_tx_int_xdp() -> page_pool_recycle_direct()

Type Parameter Key Value
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c bnxt_xdp_buff_frags_free() -> page_pool_recycle_direct()

Type Parameter Key Value
DATA_SOURCE 1 page r skb_frag_page
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/ti/cpsw.c cpsw_rx_handler() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 1 page 0-u32max
DATA_SOURCE 1 page $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/net/ethernet/ti/cpsw.c cpsw_rx_handler() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
PARAM_VALUE 0 pool->dma_mapped.xa_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 pool->mp_priv->fired_notifs 0-4294967295
PARAM_VALUE 0 pool->p.dev->dma_io_tlb_pools.next->prev 4096-ptr_max
PARAM_VALUE 0 pool->p.dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 *pool->ring->queue 0
PARAM_VALUE 1 page 0-u32max
DATA_SOURCE 1 page $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/net/ethernet/ti/cpsw.c cpsw_rx_handler() -> page_pool_recycle_direct()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/net/ethernet/microsoft/mana/mana_en.c mana_rx_skb() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 0 pool->mp_priv->fired_notifs 0-4294967295
PARAM_VALUE 0 pool->p.dev->dma_io_tlb_pools.next->prev 4096-ptr_max
PARAM_VALUE 0 pool->p.dev->dma_io_tlb_pools.next->prev->prev 4096-ptr_max
PARAM_VALUE 0 pool->p.dev->iommu->attach_deferred 0-1
PARAM_VALUE 0 pool->p.dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 pool->p.dev->kobj.release.wq->dfl_pwq 0-s64max
PARAM_VALUE 0 pool->p.dev->kobj.release.wq->saved_max_active s32min-s32max
PARAM_VALUE 0 pool->p.dev->kobj.release.wq->saved_min_active s32min-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_free_one_rx_ring() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 1 page 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &bp->dev->lock
HALF_LOCKED2 &bp->dl->lock
HALF_LOCKED2 global &rtnl_mutex

drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_rx_multi_page_skb() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 0 pool->mp_priv->fired_notifs 0-4294967295
PARAM_VALUE 0 pool->p.dev->dma_io_tlb_pools.next->prev 4096-ptr_max
PARAM_VALUE 0 pool->p.dev->dma_io_tlb_pools.next->prev->prev 4096-ptr_max
DATA_SOURCE 1 page $3
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/broadcom/bnxt/bnxt.c bnxt_rx_page_skb() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 0 pool->mp_priv->fired_notifs 0-4294967295
PARAM_VALUE 0 pool->p.dev->dma_io_tlb_pools.next->prev 4096-ptr_max
PARAM_VALUE 0 pool->p.dev->dma_io_tlb_pools.next->prev->prev 4096-ptr_max
DATA_SOURCE 1 page $3
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/mellanox/mlxsw/pci.c mlxsw_pci_rdq_pages_alloc() -> page_pool_recycle_direct()

Type Parameter Key Value
NOCHECK_CALL

drivers/net/ethernet/mellanox/mlxsw/pci.c mlxsw_pci_rdq_pages_recycle() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
NOCHECK_CALL

drivers/net/ethernet/microchip/lan966x/lan966x_fdma.c lan966x_fdma_rx_free_page() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 1 page 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/microchip/lan966x/lan966x_fdma.c lan966x_fdma_rx_get_frame() -> page_pool_recycle_direct()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/microchip/lan966x/lan966x_fdma.c lan966x_fdma_tx_clear_buf() -> page_pool_recycle_direct()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &lan966x->tx_lock
LOCK2 flags
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct lan966x)->tx_lock

drivers/net/vmxnet3/vmxnet3_drv.c vmxnet3_rq_cleanup() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 1 page 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/net/ethernet/broadcom/asp2/bcmasp_intf.c bcmasp_rx_poll() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
PARAM_VALUE 0 pool->dma_mapped.xa_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 pool->mp_priv->fired_notifs 0-4294967295
PARAM_VALUE 0 pool->p.dev->dma_io_tlb_pools.next->prev 4096-ptr_max
PARAM_VALUE 0 pool->p.dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 1 page 1-u64max
DATA_SOURCE 1 page r page_pool_dev_alloc_pages
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/engleder/tsnep_main.c tsnep_rx_page() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
CAPPED_DATA 0 pool 1
DATA_SOURCE 1 page $2
RX_PATH
NOCHECK_CALL

drivers/net/ethernet/mellanox/mlx5/core/en/xdp.c mlx5e_free_xdpsq_desc() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 1 page 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 rcu_read

drivers/net/ethernet/stmicro/stmmac/stmmac_main.c stmmac_rx() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/ti/cpsw_new.c cpsw_rx_handler() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 1 page 0-u32max
DATA_SOURCE 1 page $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/net/ethernet/ti/cpsw_new.c cpsw_rx_handler() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
PARAM_VALUE 0 pool->dma_mapped.xa_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 pool->mp_priv->fired_notifs 0-4294967295
PARAM_VALUE 0 pool->p.dev->dma_io_tlb_pools.next->prev 4096-ptr_max
PARAM_VALUE 0 pool->p.dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 *pool->ring->queue 0
PARAM_VALUE 1 page 0-u32max
DATA_SOURCE 1 page $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/net/ethernet/ti/cpsw_new.c cpsw_rx_handler() -> page_pool_recycle_direct()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/net/vmxnet3/vmxnet3_xdp.c vmxnet3_build_skb() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
PARAM_VALUE 0 pool->p.dev->iommu->pci_32bit_workaround 0-1
CAPPED_DATA 0 pool 1
DATA_SOURCE 1 page $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/net/vmxnet3/vmxnet3_xdp.c vmxnet3_run_xdp() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
PARAM_VALUE 0 pool->p.dev->iommu->pci_32bit_workaround 0-1
CAPPED_DATA 0 pool 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/net/vmxnet3/vmxnet3_xdp.c vmxnet3_run_xdp() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
PARAM_VALUE 0 pool->p.dev->iommu->pci_32bit_workaround 0-1
CAPPED_DATA 0 pool 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/net/vmxnet3/vmxnet3_xdp.c vmxnet3_run_xdp() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
PARAM_VALUE 0 pool->p.dev->iommu->pci_32bit_workaround 0-1
CAPPED_DATA 0 pool 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/net/ethernet/microchip/sparx5/lan969x/lan969x_fdma.c lan969x_fdma_rx_get_frame() -> page_pool_recycle_direct()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ni->dev_lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/marvell/octeontx2/nic/otx2_txrx.c otx2_xdp_rcv_pkt_handler() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 1 page 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/freescale/fec_main.c fec_build_skb() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
PARAM_VALUE 0 pool->mp_priv->fired_notifs 0-4294967295
PARAM_VALUE 0 pool->p.dev->dma_io_tlb_pools.next->prev 4096-ptr_max
PARAM_VALUE 0 pool->p.dev->dma_io_tlb_pools.next->prev->prev 4096-ptr_max
CAPPED_DATA 0 pool 1
DATA_SOURCE 1 page $3
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/ethernet/ti/cpsw_priv.c cpsw_fill_rx_channels() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 0 pool 4096-ptr_max
PARAM_VALUE 0 pool->dma_mapped.xa_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 pool->mp_priv->fired_notifs 0-4294967295
PARAM_VALUE 0 pool->p.dev->dma_io_tlb_pools.next->prev 4096-ptr_max
PARAM_VALUE 0 pool->p.dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 *pool->ring->queue 0
PARAM_VALUE 1 page 1-u64max
DATA_SOURCE 1 page r page_pool_dev_alloc_pages
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/net/ethernet/ti/cpsw_priv.c cpsw_run_xdp() -> page_pool_recycle_direct()

Type Parameter Key Value
PARAM_VALUE 1 page 0-u32max
DATA_SOURCE 1 page $3
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL