Thread (19 messages) 19 messages, 4 authors, 2013-12-02

Re: [PATCH 1/4] pch_gbe: Fix transmit queue management

From: David Miller <davem@davemloft.net>
Date: 2013-11-29 21:42:33
Also in: lkml

From: Ondrej Puzman <redacted>
Date: Thu, 28 Nov 2013 10:44:39 +0100
According to Documentation/networking/driver.txt the ndo_start_xmit method should not return NETDEV_TX_BUSY under normal circumstances.
Stop the transmit queue when tx_ring is full.
Please format your commit message text to 80 columns.
Signed-off-by: Ondrej Puzman <redacted>
You should be instead preventing the transmit method from being invoked
when it might be possible that a request cannot be satisfied.

This means that at the end of a transmit request, you must stop the
queue if a packet with the maximum number of possible descriptors
cannot be satisfied.  Then it is impossible for the transmit function
to be invoked in a situation where it would need to fail for lack of
available transmit descriptors.

This is why drivers decided whether to stop their TX queues based upon
calculations involving MAX_SKB_FRAGS.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help