Comment 67 for bug 655413

Revision history for this message
In , John (john-redhat-bugs) wrote :

I also suffered from this bug for a while and have a question. Why does the driver throw an ENOMEM if it cannot allocate a full complement of 256 packet/data buffers? I mean, suppose that in init_ring / rx_fill, the loop has allocated, say, 255 buffers successfully, and then fails with nomem on the 256'th. Why does it not simply continue on and use the 255 it allocated? Why fail the entire device open?

After all the various fixes, this is still the case today (2.6.37-rc5)

The chip certainly does not insist that there must be 256 rx descriptors in the chain passed to it. I have verified that in the grub netboot context. And I've been running with 128 on my linux kernel for a while now.

Maybe this is moot if the bug really has been fixed - I don't know. Has it (definitively been fixed?) or still being assessed?