[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CACKFLinwh=YgPGPZ0M0dTJK1ar+SoPUZtYb5nBmLj6CNPdCQ2g@mail.gmail.com>
Date: Wed, 18 May 2022 17:52:13 -0700
From: Michael Chan <michael.chan@...adcom.com>
To: David Laight <David.Laight@...lab.com>
Cc: Paolo Abeni <pabeni@...hat.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"mchan@...adcom.com" <mchan@...adcom.com>,
David Miller <davem@...emloft.net>,
Pavan Chebbi <pavan.chebbi@...adcom.com>
Subject: Re: tg3 dropping packets at high packet rates
On Wed, May 18, 2022 at 2:31 PM David Laight <David.Laight@...lab.com> wrote:
>
> From: Paolo Abeni
> > Sent: 18 May 2022 18:27
> ....
> > > If I read /sys/class/net/em2/statistics/rx_packets every second
> > > delaying with:
> > > syscall(SYS_clock_nanosleep, CLOCK_MONOTONIC, TIMER_ABSTIME, &ts, NULL);
> > > about every 43 seconds I get a zero increment.
> > > This really doesn't help!
> >
> > It looks like the tg3 driver fetches the H/W stats once per second. I
> > guess that if you fetch them with the same period and you are unlucky
> > you can read the same sample 2 consecutive time.
>
> Actually I think the hardware is writing them to kernel memory
> every second.
On your BCM95720 chip, statistics are gathered by tg3_timer() once a
second. Older chips will use DMA.
Please show a snapshot of all the counters. In particular,
rxbds_empty, rx_discards, etc will show whether the driver is keeping
up with incoming RX packets or not.
Powered by blists - more mailing lists