Re: eth0: memory shortage

From: Mitch Adair (mitch@theneteffect.com)
Date: Wed Jul 03 2002 - 15:15:12 EST


> I keep getting these messages (like about twice a day) in the messages:
> eth0: memory shortage
> eth0: memory shortage
> eth1: memory shortage
> eth1: memory shortage
>
>
> Any idea what could be the reason behind this?

Well this message is coming from drivers/net/3c59x.c in a bit of code that
goes:

/* Refill the Rx ring buffers. */
        for (; vp->cur_rx - vp->dirty_rx > 0; vp->dirty_rx++) {
                struct sk_buff *skb;
                entry = vp->dirty_rx % RX_RING_SIZE;
                if (vp->rx_skbuff[entry] == NULL) {
                        skb = dev_alloc_skb(PKT_BUF_SZ);
                        if (skb == NULL) {
                                static unsigned long last_jif;
                                if ((jiffies - last_jif) > 10 * HZ) {
                                        printk(KERN_WARNING "%s: memory shortage
\n", dev->name);
                                        last_jif = jiffies;
                                }
                                if ((vp->cur_rx - vp->dirty_rx) == RX_RING_SIZE)
                                        mod_timer(&vp->rx_oom_timer, RUN_AT(HZ *
 1));
                                break; /* Bad news! */
                        }

So basically it looks like it is taking much longer to refill rx ring buffers
than it should.

On past 2.4 kernels I recall the eepro100 would report a message of "out
of resources" and the fix suggested there was to increase the values in
/proc/sys/vm/freepages. Perhaps it's a similar issue with the 3c59x ??

Perhaps one of the guru's could comment?

        M
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sun Jul 07 2002 - 22:00:11 EST