Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

drivers/net/wireless/mediatek/mt76/npu.c mt76_npu_queue_cleanup() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 1 allow_direct 0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &q->lock
LOCK2 bh
TYPE_LOCK (struct mt76_queue)->lock

drivers/net/wireless/mediatek/mt76/wed.c mt76_wed_init_rx_buf() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 0 buf 1-u64max
PARAM_VALUE 1 allow_direct 0
CAPPED_DATA 0 buf 1
DATA_SOURCE 0 buf r mt76_get_page_pool_buf
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->mt76.mutex
HALF_LOCKED2 &pool->lock

drivers/net/wireless/mediatek/mt76/wed.c mt76_wed_release_rx_buf() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 0 buf 1-u64max
PARAM_VALUE 1 allow_direct 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->mt76.mutex
HALF_LOCKED2 &pool->lock

drivers/net/wireless/mediatek/mt76/usb.c mt76u_fill_rx_sg() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 1 allow_direct 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 rcu_read

drivers/net/wireless/mediatek/mt76/usb.c mt76u_urb_free() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 1 allow_direct 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/net/wireless/mediatek/mt76/usb.c mt76u_urb_free() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 0 buf 1-u64max
PARAM_VALUE 1 allow_direct 0
BUF_SIZE 0 buf s32min-(-2),1-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 buf unit_byte

drivers/net/wireless/mediatek/mt76/dma.c mt76_add_fragment() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 0 buf 1-18446744073709551604,(-10)-(-1)
DATA_SOURCE 0 buf $2
DATA_SOURCE 1 allow_direct $6
RX_PATH
NOCHECK_CALL
LOCK2 rcu_read

drivers/net/wireless/mediatek/mt76/dma.c mt76_dma_get_rxdmad_c_buf() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 1 allow_direct 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &q->lock
HALF_LOCKED2 bh
HALF_LOCKED2 rcu_read

drivers/net/wireless/mediatek/mt76/dma.c mt76_dma_rx_cleanup() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 0 buf 1-u64max
PARAM_VALUE 1 allow_direct 0
DATA_SOURCE 0 buf r mt76_dma_dequeue
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->mt76.mutex
HALF_LOCKED2 &pool->lock

drivers/net/wireless/mediatek/mt76/dma.c mt76_dma_rx_fill_buf() -> mt76_put_page_pool_buf()

Type Parameter Key Value
CAPPED_DATA 0 buf 1
DATA_SOURCE 1 allow_direct $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &q->lock
HALF_LOCKED2 bh

drivers/net/wireless/mediatek/mt76/dma.c mt76_dma_rx_process() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 0 buf 1-18446744073709551604,(-10)-(-1)
DATA_SOURCE 0 buf r mt76_dma_dequeue
RX_PATH
NOCHECK_CALL
LOCK2 rcu_read

drivers/net/wireless/mediatek/mt76/dma.c mt76_free_pending_rxwi() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 0 buf 1-u64max
PARAM_VALUE 1 allow_direct 0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 bh

drivers/net/wireless/mediatek/mt76/mt7996/mac.c mt7996_msdu_page_free_cache() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 0 buf 1-u64max
PARAM_VALUE 1 allow_direct 0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 bh
HALF_LOCKED2 &dev->mt76.mutex

drivers/net/wireless/mediatek/mt76/mt7996/mac.c mt7996_msdu_page_put_to_cache() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 0 buf 1-u64max
PARAM_VALUE 1 allow_direct 0
RX_PATH
NOCHECK_CALL
LOCK2 rcu_read

drivers/net/wireless/mediatek/mt76/mt7996/mac.c mt7996_rro_msdu_page_map_free() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 0 buf 1-u64max
PARAM_VALUE 1 allow_direct 0
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 bh
HALF_LOCKED2 &dev->mt76.mutex
HALF_LOCKED2 &pool->lock

drivers/net/wireless/mediatek/mt76/mt7996/mac.c mt7996_rro_rx_process() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 0 buf 1-u64max
PARAM_VALUE 1 allow_direct 0
RX_PATH
NOCHECK_CALL
LOCK2 rcu_read

drivers/net/wireless/mediatek/mt76/mt7996/mac.c mt7996_rro_rx_process() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 0 buf 1-u64max
PARAM_VALUE 1 allow_direct 0
RX_PATH
NOCHECK_CALL
LOCK2 rcu_read

drivers/net/wireless/mediatek/mt76/mt7996/mac.c mt7996_rx_token_put() -> mt76_put_page_pool_buf()

Type Parameter Key Value
PARAM_VALUE 0 buf 1-u64max
PARAM_VALUE 1 allow_direct 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->mt76.mutex