suppose you have x bytes of memory to devote to ethernet controller buffers. (ether in preallocated buffers or the main Pool.) and suppose you're running an ip stack on this controller. is there any way to insure that qlen(ether->iq) + sum for all Conv qlen(conv->iq) < f*x for f <= 1.
the reason for the question is that i've noticed that even for a reasonable number of users, it's pretty easy to starve the ethernet controller or panic cause there's no kernel memory to allocate. (raise your hand if you've seen the i82563 no buffers message.) i've recently doubled the number of buffers, halved the ethernet queue size, and taken other steps, but more users has already overrun this gain. - erik