• Andrew Lunn's avatar
    net: ethernet: mvneta: Fix napi structure mixup on armada 3700 · 7a86f05f
    Andrew Lunn authored
    The mvneta Ethernet driver is used on a few different Marvell SoCs.
    Some SoCs have per cpu interrupts for Ethernet events. Some SoCs have
    a single interrupt, independent of the CPU. The driver handles this by
    having a per CPU napi structure when there are per CPU interrupts, and
    a global napi structure when there is a single interrupt.
    
    When the napi core calls mvneta_poll(), it passes the napi
    instance. This was not being propagated through the call chain, and
    instead the per-cpu napi instance was passed to napi_gro_receive()
    call. This breaks when there is a single global napi instance.
    Signed-off-by: default avatarAndrew Lunn <andrew@lunn.ch>
    Fixes: 2636ac3c ("net: mvneta: Add network support for Armada 3700 SoC")
    Signed-off-by: default avatarGregory CLEMENT <gregory.clement@bootlin.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    7a86f05f
mvneta.c 128 KB