netdev
[Top] [All Lists]

Re: [PATCH] acenic - don't spin in hard_start_xmit when ring fills

To: Stephen Hemminger <shemminger@xxxxxxxx>
Subject: Re: [PATCH] acenic - don't spin in hard_start_xmit when ring fills
From: "David S. Miller" <davem@xxxxxxxxxxxxx>
Date: Thu, 16 Sep 2004 16:22:50 -0700
Cc: jes@xxxxxxxxxxxxxxxxxx, jgarzik@xxxxxxxxx, netdev@xxxxxxxxxxx
In-reply-to: <20040916161753.37254cbd@xxxxxxxxxxxxxxxxxxxxx>
References: <20040916161753.37254cbd@xxxxxxxxxxxxxxxxxxxxx>
Sender: netdev-bounce@xxxxxxxxxxx
On Thu, 16 Sep 2004 16:17:53 -0700
Stephen Hemminger <shemminger@xxxxxxxx> wrote:

> Running performance tests on the acenic, I noticed that the driver
> spins when the transmit ring gets full.  This might have been okay when
> CPU's were slower, but it isn't the right thing to do. Better to
> return TX_BUSY and let network scheduling handle it.

Acenic does completely lockless processing, are you sure you didn't
add a race or bug?

Also, NETDEV_TX_BUSY is not a valid return value for non-LLTX drivers.
From Documentation/networking/netdevices.txt:

        o NETDEV_TX_LOCKED Locking failed, please retry quickly.
          Only valid when NETIF_F_LLTX is set.

<Prev in Thread] Current Thread [Next in Thread>