Date: Thu, 20 Aug 2009 11:23:14 -0600 From: Manish Vachharajani <manishv@lineratesystems.com> To: Jack Vogel <jfvogel@gmail.com> Cc: Barney Cordoba <barney_cordoba@yahoo.com>, freebsd-net@freebsd.org Subject: Re: Dropped vs. missed packets in the ixgbe driver Message-ID: <5bc218350908201023q14c51cer6effadd49cc4c604@mail.gmail.com> In-Reply-To: <2a41acea0908201008y6e8f160dx27b406db7d3081b7@mail.gmail.com> References: <5bc218350908191146j2a22f8dcrdecb0b67eedce5c2@mail.gmail.com> <435336.24858.qm@web63908.mail.re1.yahoo.com> <5bc218350908200953p630d99c6u1538999b308c55f9@mail.gmail.com> <2a41acea0908201008y6e8f160dx27b406db7d3081b7@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
I noticed the bogus XON, XOFF numbers. I'm glad to see it will be fixed so I can cross it off my todo list. :) I don't think the issue is related though, but you never know. Barney pointed out that missed_rx in the ixgbe_update_stats_counters function accumulates the missed packet registers into the missed_rx field. At the end of the function, these are summed into ifp->if_ierrors which should be reported under Ierrs by netstat -idh. However that count is zero as reported via netstat. The stats printfs activated via sysctl dev.ix.#.stats=3D1 prints stats.mpc[0]. This number is large (around 400k on the machine I've been using to find the problem). If you look at the code, missed_rx and mpc[i] are updated with the same variables. Given that missed_rx is unsigned, I don't understand how the number fails to make it into ifp->if_ierrors, but I have yet to dive into debugging this seriously. Initially, I thought the fix was simple since I didn't see the missed_rx getting added to ierrors. But now, I am not sure where the problem is. Hopefully, it will be more obvious to you than it is to me. I'm sure it is something simple that I am missing. Manish On Thu, Aug 20, 2009 at 11:08 AM, Jack Vogel<jfvogel@gmail.com> wrote: > I've been looking at the code due to another problem of bogus flow contro= l > numbers, and there are some changes needed, things that should be 82599 v= s > 82598 and were not seperated properly. Will be forthcoming. Not sure if i= t > has any relevance to this, but its possible. > > Jack > > > On Thu, Aug 20, 2009 at 9:53 AM, Manish Vachharajani > <manishv@lineratesystems.com> wrote: >> >> Oh whoops, sorry didn't see that. =A0So the plot thickens. =A0Why don't >> these errors show up in the netstat output I forwarded originally? >> Ierrs was 0 but the dmesg output clearly shows missed packets. =A0Any >> thoughts on what is going on? =A0Looking at the code, missed_rx should >> certainly get counted in the ierrors field as you said. >> >> Is the Ierrs in the netstat output some other counter? =A0If so, how do >> I get the if_ierrors variable from the command line? >> >> Manish >> >> On Thu, Aug 20, 2009 at 6:49 AM, Barney Cordoba<barney_cordoba@yahoo.com= > >> wrote: >> > >> > >> > --- On Wed, 8/19/09, Manish Vachharajani <manishv@lineratesystems.com> >> > wrote: >> > >> >> From: Manish Vachharajani <manishv@lineratesystems.com> >> >> Subject: Re: Dropped vs. missed packets in the ixgbe driver >> >> To: "Barney Cordoba" <barney_cordoba@yahoo.com> >> >> Cc: freebsd-net@freebsd.org >> >> Date: Wednesday, August 19, 2009, 2:46 PM >> >> Agreed, the errors are reported but >> >> missed packets are not.=A0 The >> >> question is, is the correct fix to just add stats.mpc[0] to >> >> if_ierrors >> >> in that line or to add it to if_iqdrops.=A0 The fix is >> >> easy once we >> >> agree on what the correct behavior is. >> >> >> >> Manish >> >> >> >> > Barney wrote: >> >> > >> >> > if you look in ixgbe_update_stats_counters at the >> >> bottom: >> >> > >> >> > =A0 =A0 =A0 =A0ifp->if_ierrors =3D missed_rx + >> >> adapter->stats.crcerrs + >> >> > =A0 =A0 =A0 =A0 =A0 =A0 =A0 =A0adapter->stats.rlec; >> >> > >> >> > the errors are added in. >> >> > >> >> > BC >> > >> > Huh? missed_rx are the missed packets. So they are counted. >> > >> > BC >> > >> > >> > >> > >> > >> >> >> >> -- >> Manish Vachharajani >> _______________________________________________ >> freebsd-net@freebsd.org mailing list >> http://lists.freebsd.org/mailman/listinfo/freebsd-net >> To unsubscribe, send any mail to "freebsd-net-unsubscribe@freebsd.org" > > --=20 Manish Vachharajani
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5bc218350908201023q14c51cer6effadd49cc4c604>