sis900: come alive after temporary memory shortage
authorVasily Averin <vvs@sw.ru>
Fri, 28 Oct 2005 20:46:35 +0000 (16:46 -0400)
committerJeff Garzik <jgarzik@pobox.com>
Fri, 28 Oct 2005 20:46:35 +0000 (16:46 -0400)
commit7380a78a973a8109c13cb0e47617c456b6f6e1f5
treefb64f857892546a441b27af54921e1669aa30610
parentb2795f596932286ef12dc08857960d654f577405
sis900: come alive after temporary memory shortage

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: Konstantin Khorenko <khorenko@sw.ru>
Signed-off-by: Vasily Averin <vvs@sw.ru>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
drivers/net/sis900.c