• Rob Taglang's avatar
    net: ethernet: sun: niu set correct packet size in skb · 14224923
    Rob Taglang authored
    Currently, skb->len and skb->data_len are set to the page size, not
    the packet size. This causes the frame check sequence to not be
    located at the "end" of the packet resulting in ethernet frame check
    errors. The driver does work currently, but stricter kernel facing
    networking solutions like OpenVSwitch will drop these packets as
    invalid.
    
    These changes set the packet size correctly so that these errors no
    longer occur. The length does not include the frame check sequence, so
    that subtraction was removed.
    
    Tested on Oracle/SUN Multithreaded 10-Gigabit Ethernet Network
    Controller [108e:abcd] and validated in wireshark.
    Signed-off-by: default avatarRob Taglang <rob@taglang.io>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    14224923
niu.c 229 KB