Thread (24 messages) flat view 24 messages, 6 authors, 2012-07-05

Re: [PATCH net 1/7] qlge: Fixed packet transmit errors due to potential driver errors.

From: Francois Romieu <romieu@fr.zoreil.com>
Date: 2012-07-03 22:34:00

Eric Dumazet [off-list ref] :
On Tue, 2012-07-03 at 12:38 -0700, Jitendra Kalsaria wrote:
quoted
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.
:o/

Jitendra was speaking about qlge_ethtool_ops.self_test(). It will need
fixing as well.
In fact, you could just BUG() at this point, and maybe David will accept
such a patch.
Mildly. It would turn qlge_ethtool_ops.self_test() into a system killer.

[...]
testing atomic_read(&tx_ring->tx_count) at the beginning of qlge_send()
is too late. NETDEV_TX_BUSY is deprecated.
Yes.

Returning NETDEV_TX_BUSY when dma mapping fails in ql_map_send isn't nice
either.

-- 
Ueimor
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help