[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1341347235.2583.796.camel@edumazet-glaptop>
Date: Tue, 03 Jul 2012 22:27:15 +0200
From: Eric Dumazet <eric.dumazet@...il.com>
To: Jitendra Kalsaria <jitendra.kalsaria@...gic.com>
Cc: David Miller <davem@...emloft.net>,
netdev <netdev@...r.kernel.org>,
Ron Mercer <ron.mercer@...gic.com>,
Dept-NX Linux NIC Driver
<Dept_NX_Linux_NIC_Driver@...gic.com>
Subject: RE: [PATCH net 1/7] qlge: Fixed packet transmit errors due to
potential driver errors.
On Tue, 2012-07-03 at 12:38 -0700, Jitendra Kalsaria wrote:
> I think my patch description might have been misleading. We are not
> fixing a logical problem but rather a statistics reporting problem.
> Our transmit function is not getting called when queue is full but
> when we stop the queue it increment tx_error statistic and one of our
> customers is running a test that deliberately floods the queue causing
> it to periodically be stopped. The customer has not reported logical
> problem with the test were driver perform very well but they merely
> pointed out that we were incorrectly reporting the queue full
> condition as a tx_error.
>
> This patch was intended to remove the line that increments the
> tx_error statistic when the queue is correctly stopped.
I believe everybody kindly ask you to fix the driver logic instead
of trying to hide to your customers the problems.
In fact, you could just BUG() at this point, and maybe David will accept
such a patch.
testing atomic_read(&tx_ring->tx_count) at the beginning of qlge_send()
is too late. NETDEV_TX_BUSY is deprecated.
Well behaving drivers should perform the test at the end of their
ndo_start_xmit() and stop the queue so that next packet wont come at
all.
--
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