[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <5433A48E.1040505@gmail.com>
Date: Tue, 07 Oct 2014 11:30:06 +0300
From: Amir Vadai <amirv.mellanox@...il.com>
To: Eric Dumazet <eric.dumazet@...il.com>,
Amir Vadai <amirv@...lanox.com>
CC: "David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>, netdev@...r.kernel.org,
Yevgeny Petrilin <yevgenyp@...lanox.com>,
Or Gerlitz <ogerlitz@...lanox.com>,
Ido Shamay <idos@...lanox.com>
Subject: Re: [PATCH net-next] net/mlx4_en: remove NETDEV_TX_BUSY
On 10/6/2014 7:30 PM, Eric Dumazet wrote:
> From: Eric Dumazet <edumazet@...gle.com>
>
> Drivers should avoid NETDEV_TX_BUSY as much as possible.
>
> They should stop the tx queue before qdisc even tries to push another
> packet, to avoid requeues.
>
> For a driver supporting skb->xmit_more, this is likely to be a prereq
> anyway, otherwise we could have a tx deadlock : We need to force a
> doorbell if TX ring is full.
>
> Signed-off-by: Eric Dumazet <edumazet@...gle.com>
> ---
Reviewed. Also verified that it fixes the deadlock (by sending a large
burst - larger than ring size). Before this fix, last packet of the
burst wasn't sent, therefore no doorbell was rang, and the queue was
stalled.
BTW, another nice optimization that we hope to send soon, is not to arm
the CQ unless ringing the doorbell.
Acked-by: Amir Vadai <amirv@...lanox.com>
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists