> When an application maps order-0 page_pool RX fragments into user space > via TCP_ZEROCOPY_RECEIVE and forwards that mapped address into TX > sendmsg(MSG_ZEROCOPY), zerocopy_fill_skb_from_iter() pins the pages via > iov_iter_get_pages2() (which increments page->_refcount) while > skb_release_data() releases fragments via netmem_dec_ref(). > > Acquire each fragment reference via netmem_inc_ref() when attaching a > fragment in zerocopy_fill_skb_from_iter() and release the corresponding > GUP page->_refcount reference via the existing batched page_ref_sub() > path so the TX SKB fragment reference pairs with netmem_dec_ref() in > skb_release_data() once netmem_inc_ref() and netmem_dec_ref() handle > page_pool netmems. > > Signed-off-by: Mina Almasry <[email protected]>
Sashiko has reviewed this patch and found no issues. -- Sashiko AI review ยท https://sashiko.dev/#/patchset/[email protected]?part=3
