[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20171113145115.GM18407@kw.sim.vm.gnt>
Date: Mon, 13 Nov 2017 15:51:15 +0100
From: Simon Guinot <simon.guinot@...uanux.org>
To: David Miller <davem@...emloft.net>
Cc: thomas.petazzoni@...e-electrons.com, netdev@...r.kernel.org,
musv@....de, andreas.tobler@...udguard.ch,
gregory.clement@...e-electrons.com,
antoine.tenart@...e-electrons.com, mw@...ihalf.com,
stable@...r.kernel.org
Subject: Re: [PATCH] net: mvneta: fix handling of the Tx descriptor counter
On Sat, Nov 11, 2017 at 06:45:04PM +0900, David Miller wrote:
> From: Simon Guinot <simon.guinot@...uanux.org>
> Date: Wed, 8 Nov 2017 17:58:35 +0100
>
> > @@ -2413,8 +2416,7 @@ static int mvneta_tx(struct sk_buff *skb, struct net_device *dev)
> > if (txq->count >= txq->tx_stop_threshold)
> > netif_tx_stop_queue(nq);
> >
> > - if (!skb->xmit_more || netif_xmit_stopped(nq) ||
> > - txq->pending + frags > MVNETA_TXQ_DEC_SENT_MASK)
> > + if (!skb->xmit_more || netif_xmit_stopped(nq))
> > mvneta_txq_pend_desc_add(pp, txq, frags);
> > else
> > txq->pending += frags;
>
> As David Laight said, you should not allow unlimited amounts of
> ->xmit_more frames to be queued without a TX doorbell update.
>
> Therefore, please keep some kind of limit here otherwise latency
> will spike in some circumstances.
Hi David,
IIUC the driver stops the queue if a threshold of 316 Tx descriptors is
reached (default and worst value).
Is that a "good enough" kind of limit ? Or do you want me to keep the
condition above ?
Simon
Download attachment "signature.asc" of type "application/pgp-signature" (182 bytes)
Powered by blists - more mailing lists