• Daniel Lezcano's avatar
    macvlan : fix checksums error when we are in bridge mode · 12a2856b
    Daniel Lezcano authored
    When the lower device has offloading capabilities, the packets checksums
    are not computed. That leads to have any macvlan port in bridge mode to
    not work because the packets are dropped due to a bad checksum.
    
    If the macvlan is in bridge mode, the packet is forwarded to another
    macvlan port and reach the network stack where it looks for a checksum
    but this one was not computed due to the offloading of the lower device.
    In this case, we have to set the packet with CHECKSUM_UNNECESSARY
    when it is forwarded to a bridged port and restore the previous value of
    ip_summed when the packet goes to the lowerdev.
    Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@free.fr>
    Cc: Patrick McHardy <kaber@trash.net>
    Cc: Andrian Nord <nightnord@gmail.com>
    Acked-by: default avatarEric Dumazet <eric.dumazet@gmail.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    12a2856b
macvlan.c 21.6 KB