Darren Reed wrote:
Of couse this would allow base (in esballoc/desballoc) to be
ignored.
I don't understand why you'd want to change that part.
If we're creating virtual NICs then doesn't it stand to reason that those
virtual NICs also have virtual buffers on them?
Yes, but what does this have to do with base in esballoc/desballoc? That
was the part I didn't understand why you wanted to change.
In this case the decision about where to allocate the buffer from needs
to be made by code outside of the driver, unless we wanted to rototill
lots of NIC drivers?
I'm having a hard time understanding the problem you are trying to
solve, hence I can't tell whether lots of a few drivers would need to
change.
Following that thought further, if I'm sharing a NIC between various
virtual NICs, why shouldn't I be able to reserve a % of the NIC's
buffers for a given purpose? If a NIC only has a small number of
buffers, then I might want to exercise more control over who does
or does not get on-card buffers.
For the receive buffers that the hardware DMAs into, the only way you
can control what they are used for is to use separate receive descriptor
rings and some classification rules in the NIC to determine which
packets use which receive descriptor ring.
If you want to support that, you definitely need to modify the driver to
use multiple receive descriptor rings. Changing it to use allocb or
*esballoc differently could be done at the same time as those modifications.
Erik
_______________________________________________
networking-discuss mailing list
[email protected]