diff options
Diffstat (limited to 'drivers/net/ethernet/sfc/nic.c')
| -rw-r--r-- | drivers/net/ethernet/sfc/nic.c | 3 | 
1 files changed, 2 insertions, 1 deletions
| diff --git a/drivers/net/ethernet/sfc/nic.c b/drivers/net/ethernet/sfc/nic.c index 0ad790cc473..eaa8e874a3c 100644 --- a/drivers/net/ethernet/sfc/nic.c +++ b/drivers/net/ethernet/sfc/nic.c @@ -376,7 +376,8 @@ efx_may_push_tx_desc(struct efx_tx_queue *tx_queue, unsigned int write_count)  		return false;  	tx_queue->empty_read_count = 0; -	return ((empty_read_count ^ write_count) & ~EFX_EMPTY_COUNT_VALID) == 0; +	return ((empty_read_count ^ write_count) & ~EFX_EMPTY_COUNT_VALID) == 0 +		&& tx_queue->write_count - write_count == 1;  }  /* For each entry inserted into the software descriptor ring, create a |