• Paolo Abeni's avatar
    skbuff: allow 'slow_gro' for skb carring sock reference · 5e10da53
    Paolo Abeni authored
    This change leverages the infrastructure introduced by the previous
    patches to allow soft devices passing to the GRO engine owned skbs
    without impacting the fast-path.
    
    It's up to the GRO caller ensuring the slow_gro bit validity before
    invoking the GRO engine. The new helper skb_prepare_for_gro() is
    introduced for that goal.
    
    On slow_gro, skbs are aggregated only with equal sk.
    Additionally, skb truesize on GRO recycle and free is correctly
    updated so that sk wmem is not changed by the GRO processing.
    
    rfc-> v1:
     - fixed bad truesize on dev_gro_receive NAPI_FREE
     - use the existing state bit
    Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    5e10da53
skbuff.c 161 KB