[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20090618.004748.165979927.davem@davemloft.net>
Date: Thu, 18 Jun 2009 00:47:48 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: dhananjay@...xen.com
Cc: netdev@...r.kernel.org
Subject: Re: [PATCH 2/2] netxen: fix tx ring accounting
From: Dhananjay Phadke <dhananjay@...xen.com>
Date: Wed, 17 Jun 2009 20:27:25 -0700
> This forces every update of tx ring producer to check for
> availability of space for next full TSO command. Earlier
> firmware control commands didn't care to pause tx queue.
>
> Stop the tx queue if there's not enough space to transmit one full
> LSO command left on the tx ring after current transmit. This avoids
> returning NETDEV_TX_BUSY after checking distance between producer
> and consumer on every cpu.
>
> Restart the tx queue only if we have cleaned up enough tx
> descriptors.
>
> Signed-off-by: Dhananjay Phadke <dhananjay@...xen.com>
Applied, thanks.
At some point you really should audit the queue vs. carrier
state handling. There is absolutely no reason to conditionally
do queue waking based upon carrier state. Yet I see such
tests here and there in this driver.
It is the core networkings job to seal off sending packets when
the carrier goes down, and that's exactly what it does.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists