summaryrefslogtreecommitdiff
path: root/tools/cgroup
diff options
context:
space:
mode:
authorSiva Reddy Kallam <siva.kallam@broadcom.com>2016-02-03 14:09:38 +0530
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-03-03 15:07:05 -0800
commit98673eb04022285598ae9b62aa314d5ea65e2c27 (patch)
tree532ba8492f601eb0eda7732c7517981a5b2246dc /tools/cgroup
parent1bec5f40664ccef7efa54102c5e29ac52c7db634 (diff)
tg3: Fix for tg3 transmit queue 0 timed out when too many gso_segs
[ Upstream commit b7d987295c74500b733a0ba07f9a9bcc4074fa83 ] tg3_tso_bug() can hit a condition where the entire tx ring is not big enough to segment the GSO packet. For example, if MSS is very small, gso_segs can exceed the tx ring size. When we hit the condition, it will cause tx timeout. tg3_tso_bug() is called to handle TSO and DMA hardware bugs. For TSO bugs, if tg3_tso_bug() cannot succeed, we have to drop the packet. For DMA bugs, we can still fall back to linearize the SKB and let the hardware transmit the TSO packet. This patch adds a function tg3_tso_bug_gso_check() to check if there are enough tx descriptors for GSO before calling tg3_tso_bug(). The caller will then handle the error appropriately - drop or lineraize the SKB. v2: Corrected patch description to avoid confusion. Signed-off-by: Siva Reddy Kallam <siva.kallam@broadcom.com> Signed-off-by: Michael Chan <mchan@broadcom.com> Acked-by: Prashant Sreedharan <prashant@broadcom.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'tools/cgroup')
0 files changed, 0 insertions, 0 deletions