On 3/1/26 12:39 AM, Michael S. Tsirkin wrote:
On Sat, Feb 28, 2026 at 05:41:22AM -0800, Vishwanath Seshagiri wrote:
@@ -2446,7 +2349,7 @@ static struct sk_buff *virtnet_skb_append_frag(struct 
sk_buff *head_skb,
offset = buf - page_address(page);
        if (skb_can_coalesce(curr_skb, num_skb_frags, page, offset)) {
-               put_page(page);
+               page_pool_put_page(rq->page_pool, page, -1, true);
                skb_coalesce_rx_frag(curr_skb, num_skb_frags - 1,
                                     len, truesize);
        } else {

This part seems wrong to me: can this not be called from
xsk_append_merge_buffer?  Because that one seems to still allocate with
napi_alloc_frag.


Ack. will fix this in v9.






Reply via email to