Thanks to Andi, Dave, Jeff and everyone who responded to the original query; I've got enough pointers to presentations, blogs and ideas to keep me busy for a while :-)
VJ channels indeed seem to compliment and take to a different level some sw and hw ideas on Dave's TODO list. By now we have submitted UFO, MSI-X and LRO patches. The one item on the TODO list that we did not submit a full driver patch for is the "support for distributing receive processing across multiple CPUs (using NIC hw queues)", mainly because at present the feature can't be fully used by the host anyways. If some channel-oriented changes to the stack/NAPI do converge, it may be worthwhile to extend the interface to the driver/hw channels as well. To this end, we can submit a proposal and a reference implementation for the driver interface that would support driver/hw channels (one per cpu). Some of the channel capabilities will be as follows: - configurable subset of tx/rx descriptors per channel - separate msi-x interrupt(s) per channel - separate interrupt moderation scheme per channel, potentially driven by NAPI. - rx traffic classification; we will probably start from couple relevant types like hash-based and direct socket match based. If nothing else, this implementation will allow to collect some performance data on hw channel acceleration and see what works and what doesn't :-) As a second stage, we can allow the driver channels to be used as a separate eth interface (using multiple MAC addresses and MAC-based rx classification), for virtualization frameworks. Stay tuned; any comments/suggestions are welcome.... Leonid - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html