[PATCH] sky2: limit coalescing values to ring size

Don't allow coalescing values to be bigger than the transmit ring.
Since if you set them that big, the interrupt never happens and driver
livelocks.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
This commit is contained in:
Stephen Hemminger 2006-02-22 11:44:59 -08:00 committed by Francois Romieu
parent 977bdf06ca
commit ff81fbbe32

View file

@ -2884,11 +2884,11 @@ static int sky2_set_coalesce(struct net_device *dev,
(ecmd->rx_coalesce_usecs_irq < tmin || ecmd->rx_coalesce_usecs_irq > tmax))
return -EINVAL;
if (ecmd->tx_max_coalesced_frames > 0xffff)
if (ecmd->tx_max_coalesced_frames >= TX_RING_SIZE-1)
return -EINVAL;
if (ecmd->rx_max_coalesced_frames > 0xff)
if (ecmd->rx_max_coalesced_frames > RX_MAX_PENDING)
return -EINVAL;
if (ecmd->rx_max_coalesced_frames_irq > 0xff)
if (ecmd->rx_max_coalesced_frames_irq >RX_MAX_PENDING)
return -EINVAL;
if (ecmd->tx_coalesce_usecs == 0)