• Mina Almasry's avatar
    Revert "net: mirror skb frag ref/unref helpers" · 173e7622
    Mina Almasry authored
    This reverts commit a580ea99.
    
    This revert is to resolve Dragos's report of page_pool leak here:
    https://lore.kernel.org/lkml/20240424165646.1625690-2-dtatulea@nvidia.com/
    
    The reverted patch interacts very badly with commit 2cc3aeb5 ("skbuff:
    Fix a potential race while recycling page_pool packets"). The reverted
    commit hopes that the pp_recycle + is_pp_page variables do not change
    between the skb_frag_ref and skb_frag_unref operation. If such a change
    occurs, the skb_frag_ref/unref will not operate on the same reference type.
    In the case of Dragos's report, the grabbed ref was a pp ref, but the unref
    was a page ref, because the pp_recycle setting on the skb was changed.
    
    Attempting to fix this issue on the fly is risky. Lets revert and I hope
    to reland this with better understanding and testing to ensure we don't
    regress some edge case while streamlining skb reffing.
    
    Fixes: a580ea99 ("net: mirror skb frag ref/unref h...
    173e7622
veth.c 45.9 KB