Well, I got past the ioctl part but it seems that we're also doing some QoS stuff using netlink sockets that is getting delayed also, and I can't get rid of the rtnl lock there.. Is there anything that can be done on the driver side? 200ms seems like a long time to be holding the lock..
Aaron On Wed, Mar 26, 2014 at 11:20 AM, Aaron Brice <[email protected]> wrote: > Yes, I think that's the issue. With our 20ms timeslots it was taking > too long to do a bunch of reads so we added an ioctl to the tap driver > to read a bunch of packets into a buffer. I think we can remove the > rtnl lock for this particular ioctl. We didn't see an issue with the > e1000 motherboard interface, but maybe that one just releases the lock > faster.. > > Thanks a bunch, > Aaron > > > On Wed, Mar 26, 2014 at 10:51 AM, Rustad, Mark D > <[email protected]> wrote: >> On Mar 26, 2014, at 10:24 AM, Aaron Brice <[email protected]> wrote: >> >>> On Tue, Mar 25, 2014 at 10:39 PM, Ronciak, John <[email protected]> >>> wrote: >>>> How are the different PCIe slots connected into the system? In a lot of >>>> cases some of the slots are not all equal in terms of how they are laid >>>> out in the system. If you move the interface doing the 20ms read to a NIC >>>> in a different slot does the behavior change? Does the i/f on the m/b if >>>> used for the 20ms read work correctly? >>> >>> The odd part is that the process doing the 20ms read is reading from a >>> virtual tap interface (/dev/net/tun) and not from one of the NICs. It >>> seems like bringing down the igb interface is causing some system >>> level lock at least for network I/O? >>> >>> Aaron >> >> That sounds like the rtnl lock to me. Are you doing ioctls on the tap >> interface at that time? I believe that the ioctls will take the rtnl lock, >> which is likely to delay things for you. >> >> -- >> Mark Rustad, Networking Division, Intel Corporation >> ------------------------------------------------------------------------------ _______________________________________________ E1000-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/e1000-devel To learn more about Intel® Ethernet, visit http://communities.intel.com/community/wired
