• Mahesh Bandewar's avatar
    ipvlan: remove excessive packet scrubbing · c0d451c8
    Mahesh Bandewar authored
    IPvlan currently scrubs packets at every location where packets may be
    crossing namespace boundary. Though this is desirable, currently IPvlan
    does it more than necessary. e.g. packets that are going to take
    dev_forward_skb() path will get scrubbed so no point in scrubbing them
    before forwarding. Another side-effect of scrubbing is that pkt-type gets
    set to PACKET_HOST which overrides what was already been set by the
    earlier path making erroneous delivery of the packets.
    
    Also scrubbing packets just before calling dev_queue_xmit() has detrimental
    effects since packets lose skb->sk and because of that miss prio updates,
    incorrect socket back-pressure and would even break TSQ.
    
    Fixes: b93dd49c ('ipvlan: Scrub skb before crossing the namespace boundary')
    Signed-off-by: default avatarMahesh Bandewar <maheshb@google.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    c0d451c8
ipvlan_core.c 18.7 KB