On Sat, 2015-11-07 at 09:52 +0100, Clement Hermann wrote: > Le 07/11/2015 02:20, Ben Hutchings a écrit : > > On Fri, 2015-11-06 at 18:35 +0100, Clément Hermann wrote: > > > > > > igb is the Linux device driver released for Intel 82575/6, 82580, I350, and > > > I210/211-based network interfaces. > > > . > > > This driver uses the same base as the igb module included in the Linux kernel, > > > with added features such as advanced multiqueue control (RSS), interrupts > > > throttle management, Large Receive Offload (LRO) and Low Latency Interrupts > > > (LLI). > > > . > > > Only use this driver if you need these specific features. > > [...] > > > > This description is inaccurate; two of the four features mentioned > > actually are included in the in-tree driver. And I don't think there'a > > anything stopping Intel's maintainers from adding the remaining > > features to the in-tree driver. > > > > The justification for adding an alternate version of the driver seems > > quite weak. > > > You're right, this is poorly worded. > > Most features are actually in mainline, you're right, but there is often > no way to control them: only default values are usable. > > For instance, RSS: in mainline, you don't have the option to choose > (reduce) the number of queues in order avoid using both thread of a > HT-enabled CPU core, or keeping some cpu free of network interrupts. You > can free a CPU using affinity, but you'll end up with several queues on > another. As stated in my description, this is not intended to replace > the mainline kernel which should work fine for most uses. You can use ethtool -X to do this. [...] > So here is an updated description: > > igb is the Linux device driver released for Intel 82575/6, 82580, I350, and > I210/211-based network interfaces. > . > This driver uses the same code base as the igb module included in the Linux kernel, > and allows control over advanced features via modules parameters : > - InterruptThrottleRate:Maximum interrupts per second, per vector ethtool -C ? > - IntMode:Change Interrupt Mode > - Node:set the starting node to allocate memory on > - LLIPort:Low Latency Interrupt TCP Port > - LLIPush:Low Latency Interrupt on TCP Push flag > - LLISize:Low Latency Interrupt on Packet Size > - RSS:Number of Receive-Side Scaling Descriptor Queues > - VMDQ:Number of Virtual Machine Device Queues > - MDD:Malicious Driver Detection > - QueuePairs:Enable Tx/Rx queue pairs for interrupt handling > - EEE:Enable/disable on parts that support the feature ethtool --set-eee > - DMAC:Disable or set latency for DMA Coalescing I've told them this should be done through ethtool but they never sent patches for this. > - LRO:Large Receive Offload Usually oesn't offer much advantage over GRO, and it doesn't work with bridging. Ben. > Only use this driver if you need fine control over these specific features, otherwise, > > you should stick to the driver included in mainline kernel. > > Including the full list of parameter was actually my first move, but I thought it would maybe be too long. > Seeing your reaction, though, I understand it needs clarification. > > Cheers, > -- Ben Hutchings Unix is many things to many people, but it's never been everything to anybody.
Attachment:
signature.asc
Description: This is a digitally signed message part