>-----Original Message----- >From: Jaroslav Jirásek [mailto:[email protected]] >Sent: Monday, May 19, 2014 2:47 AM >To: [email protected] >Subject: [E1000-devel] problem with balancing irq > >Hi, I have last driver ixgbe-3.21.2, running on kernel >2.6.35.14 > >Module is loaded with this parameters: >allow_unsupported_sfp=1,1 LRO=0,0 DCA=2,2 FdirPballoc=3,3 > >Computer is used as router, routing about 3gbit of traffic > >With set_irq_affinity.sh I have set for each RxTx queue own >cpu core > >I am not using Flow Director: >[root@router1 /root]# ethtool -u eth2 >12 RX rings available >Total 0 rules
You are using FlowDirector, you don't have custom (perfect) filters setup. FlowDirector has 2 modes of operation - perfect filters and signature filters. By default the driver is using signature filters which basically makes sure that packets from a certain flow are transmitted and received on the same queue. If you didn't think you used FlowDirector why did you load the driver with FdirPbAlloc=3? See more below. > >But on counter fdir_match is visible very much traffic: >[root@router1 /root]# ethtool -S eth2 | grep fdir > fdir_match: 3463780554 > fdir_miss: 6874229294 > fdir_overflow: 3771 > >1) I am not sure if I understand documentation, but I think,that >fdir_match may be zero if I am not using Flow Director? If you see fdir_miss/match/overflow increment then you have FlowDirector running as mentioned above. To disable Flow Director you can either: ethtool -K ethx ntuple on (switching to perfect filters without adding any) or on module load with: modprobe ixgbe AtrSampleRate=0,0... This will put you in RSS mode which you may want to try, but be aware that encapsulated packets will not be spread across CPUs with RSS. Since you are loading the driver with FdirPballoc=3 you are already allocating max amount of buffer for the FlowDirector filters, but you still get fdir_overflow. If this counter increments frequently in your environment you may want to look into setting up perfect filters. > >2) In /proc/interrupts I can see much more interrupts on >TxRx-0 queue >and TxRx-11 queue is used much less: > >[root@router1 /root]# cat /proc/interrupts | grep eth2 > 81: 1178676913 0 0 0 >0 0 > 0 0 0 0 0 >0 >eth2-TxRx-0 > 82: 1 903278334 0 0 >0 0 > 0 0 0 0 0 >0 >eth2-TxRx-1 > 83: 1 0 914341377 0 >0 0 > 0 0 0 0 0 >0 >eth2-TxRx-2 > 84: 1 0 0 897610192 >0 0 > 0 0 0 0 0 >0 >eth2-TxRx-3 > 85: 1 0 0 0 >873319758 0 > 0 0 0 0 0 >0 >eth2-TxRx-4 > 86: 1 0 0 0 >0 885857878 > 0 0 0 0 0 >0 >eth2-TxRx-5 > 87: 1 0 0 0 >0 0 >892079196 0 0 0 0 >0 >eth2-TxRx-6 > 88: 1 0 0 0 >0 0 > 0 867894207 0 0 0 >0 >eth2-TxRx-7 > 89: 1 0 0 0 >0 0 > 0 0 824148554 0 0 >0 >eth2-TxRx-8 > 90: 1 0 0 0 >0 0 > 0 0 0 801975826 0 >0 >eth2-TxRx-9 > 91: 1 0 0 0 >0 0 > 0 0 0 0 742405278 >0 >eth2-TxRx-10 > 92: 1 0 0 0 >0 0 > 0 0 0 0 0 >402434225 >eth2-TxRx-11 > 93: 3806 0 0 0 >0 0 > 0 0 0 0 0 >0 eth2 > >Can you help me? In older version of ixgbe I have almost the >same interrupts on each queue As I mentioned above in its default mode FlowDirector will attempt to match the queue of a transmitted packet to the same queue on Rx. So if you are not seeing many packets on queue 11 it is because you have not transmitted many on the CPU tied to that queue. If possible you may want to try and spread your load across the CPUs. The packets on queue 0 are the ones from fdir_missed (where FlowDirector could not create a hash for that flow and they default to queue 0) Thanks, Emil > >Thank you for help > > >------------------------------------------------------------ >------------------ >"Accelerate Dev Cycles with Automated Cross-Browser Testing >- For FREE >Instantly run your Selenium tests across 300+ browser/OS >combos. >Get unparalleled scalability from the best Selenium testing >platform available >Simple to use. Nothing to install. Get started now for >free." >http://p.sf.net/sfu/SauceLabs >_______________________________________________ >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 ------------------------------------------------------------------------------ "Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE Instantly run your Selenium tests across 300+ browser/OS combos. Get unparalleled scalability from the best Selenium testing platform available Simple to use. Nothing to install. Get started now for free." http://p.sf.net/sfu/SauceLabs _______________________________________________ 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
