• B
    lan743x: Fix RX Kernel Panic · 22326473
    Bryan Whitehead 提交于
    [ Upstream commit dd9d9f5907bb475f8b1796c47d4ecc7fb9b72136 ]
    
    It has been noticed that running the speed test at
    www.speedtest.net occasionally causes a kernel panic.
    
    Investigation revealed that under this test RX buffer allocation
    sometimes fails and returns NULL. But the lan743x driver did
    not handle this case.
    
    This patch fixes this issue by attempting to allocate a buffer
    before sending the new rx packet to the OS. If the allocation
    fails then the new rx packet is dropped and the existing buffer
    is reused in the DMA ring.
    
    Updates for v2:
        Additional 2 locations where allocation was not checked,
            has been changed to reuse existing buffer.
    
    Fixes: 23f0703c ("lan743x: Add main source files for new lan743x driver")
    Signed-off-by: NBryan Whitehead <Bryan.Whitehead@microchip.com>
    Signed-off-by: NDavid S. Miller <davem@davemloft.net>
    Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    22326473
lan743x_main.c 83.3 KB