From: Jakub Kicinski > Sent: 25 August 2017 20:34 > > On Fri, 25 Aug 2017 08:24:49 -0700, Jacob Keller wrote: > > Under some circumstances, such as with many stacked devices, it is > > possible that dev_hard_start_xmit will bundle many packets together, and > > mark them all with xmit_more. > > Excuse my ignorance but what are those stacked devices? Could they > perhaps be fixed somehow? My intuition was that long xmit_more > sequences can only happen if NIC and/or BQL are back pressuring, and > therefore we shouldn't be seeing a long xmit_more "train" arriving at > an empty device ring...
I also suspect that the packets could be coming from multiple sources. So getting the sources to limit the number of packets with XMIT_MORE set won't really solve any problem. At some point the driver for the physical device will have to give it a kick to start the transmits. On the systems I've got (desktop x86) PCIe writes aren't really very expensive. Reads are a different matter entirely (2us into our fpga target). David.