• Christian Lamparter's avatar
    net: emac: Fix napi poll list corruption · f5595606
    Christian Lamparter authored
    This patch is pretty much a carbon copy of
    commit 3079c652 ("caif: Fix napi poll list corruption")
    with "caif" replaced by "emac".
    
    The commit d75b1ade ("net: less interrupt masking in NAPI")
    breaks emac.
    
    It is now required that if the entire budget is consumed when poll
    returns, the napi poll_list must remain empty.  However, like some
    other drivers emac tries to do a last-ditch check and if there is
    more work it will call napi_reschedule and then immediately process
    some of this new work.  Should the entire budget be consumed while
    processing such new work then we will violate the new caller
    contract.
    
    This patch fixes this by not touching any work when we reschedule
    in emac.
    Signed-off-by: default avatarChristian Lamparter <chunkeey@googlemail.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    f5595606
mal.c 19.3 KB