diff options
author | Sowmini Varadhan <sowmini.varadhan@oracle.com> | 2014-08-12 16:33:10 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-08-14 05:04:46 +0200 |
commit | adddc32d6fde82156c779997f928865100542e55 (patch) | |
tree | b7605e8c600203c43768f48256c4382f30e5c390 /crypto/blowfish_common.c | |
parent | sunvnet: Do not ask for an ACK for every dring transmit (diff) | |
download | linux-adddc32d6fde82156c779997f928865100542e55.tar.xz linux-adddc32d6fde82156c779997f928865100542e55.zip |
sunvnet: Do not spin in an infinite loop when vio_ldc_send() returns EAGAIN
ldc_rx -> vnet_rx -> .. -> vnet_walk_rx->vnet_send_ack should not
spin into an infinite loop waiting EAGAIN to lift.
The sender could have sent us a burst, and gone to lunch without
doing any more ldc_read()'s. That should not cause the receiver to
loop infinitely till soft-lockup kicks in.
Similarly __vnet_tx_trigger should only loop on EAGAIN a finite
number of times. The caller (vnet_start_xmit()) already has code
to reset the dring state and bail on errors from __vnet_tx_trigger
Signed-off-by: Sowmini Varadhan <sowmini.varadhan@oracle.com>
Acked-by: Raghuram Kothakota <raghuram.kothakota@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'crypto/blowfish_common.c')
0 files changed, 0 insertions, 0 deletions