• Vasily Averin's avatar
    sis900: come alive after temporary memory shortage · 7380a78a
    Vasily Averin authored
    1) Forgotten counter incrementation in sis900_rx() in case
         it doesn't get memory for skb, that leads to whole interface failure.
         Problem is accompanied with messages:
        eth0: Memory squeeze,deferring packet.
        eth0: NULL pointer encountered in Rx ring, skipping
    
    2) If counter cur_rx overflows and there'll be temporary memory problems
         buffer can't be recreated later, when memory IS available.
    
    3) Limit the work in handler to prevent the endless packets processing
       if new packets are generated faster then handled.
    Signed-off-by: default avatarKonstantin Khorenko <khorenko@sw.ru>
    Signed-off-by: default avatarVasily Averin <vvs@sw.ru>
    Signed-off-by: default avatarJeff Garzik <jgarzik@pobox.com>
    7380a78a
sis900.c 70.1 KB