[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+FuTSetvnwCzyuFkypkXgYycsMe1B3brW93upmg+KjGsgD-gA@mail.gmail.com>
Date: Wed, 26 May 2021 17:22:08 -0400
From: Willem de Bruijn <willemdebruijn.kernel@...il.com>
To: Eric Dumazet <eric.dumazet@...il.com>
Cc: "Michael S. Tsirkin" <mst@...hat.com>,
linux-kernel <linux-kernel@...r.kernel.org>,
Jakub Kicinski <kuba@...nel.org>, Wei Wang <weiwan@...gle.com>,
David Miller <davem@...emloft.net>,
Network Development <netdev@...r.kernel.org>,
virtualization <virtualization@...ts.linux-foundation.org>,
Jason Wang <jasowang@...hat.com>
Subject: Re: [PATCH v3 4/4] virtio_net: disable cb aggressively
On Wed, May 26, 2021 at 11:15 AM Eric Dumazet <eric.dumazet@...il.com> wrote:
>
>
>
> On 5/26/21 10:24 AM, Michael S. Tsirkin wrote:
> > There are currently two cases where we poll TX vq not in response to a
> > callback: start xmit and rx napi. We currently do this with callbacks
> > enabled which can cause extra interrupts from the card. Used not to be
> > a big issue as we run with interrupts disabled but that is no longer the
> > case, and in some cases the rate of spurious interrupts is so high
> > linux detects this and actually kills the interrupt.
Temporarily disabling interrupts during free_old_xmit_skbs in
virtnet_poll_cleantx might reduce the spurious interrupt rate by
avoiding an additional Tx interrupt from being scheduled during
virtnet_poll_cleantx.
It probably does not address all spurious interrupts, as
virtnet_poll_cleantx might also run in between the scheduling of the
Tx interrupt and the call to virtnet_poll_tx, right? The Tx and Rx
interrupts racing.
If I can reproduce the report, I can also test how much this helps in practice.
> > Fix up by disabling the callbacks before polling the tx vq.
>
>
> It is not clear why we want to poll TX completions from ndo_start_xmit() in napi mode ?
Yes, we can simply exclude that. The original napi-tx patch did not
make that change, but not for any strong reason.
Powered by blists - more mailing lists