[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20150325.003455.923244010335019144.davem@davemloft.net>
Date: Wed, 25 Mar 2015 00:34:55 -0400 (EDT)
From: David Miller <davem@...emloft.net>
To: rusty@...tcorp.com.au
Cc: stephen@...workplumber.org, mst@...hat.com,
virtualization@...ts.linux-foundation.org, netdev@...r.kernel.org
Subject: Re: [PATCH net-next] virtio: change comment in transmit
From: Rusty Russell <rusty@...tcorp.com.au>
Date: Wed, 25 Mar 2015 14:29:38 +1030
> I note that there's still no comment saying "don't do this" in
> netdevice.h; I gather returning NETDEV_TX_BUSY is still considered a Bad
> Thing?
You're not supposed to do it still, that's right.
If the driver returns NETDEV_TX_BUSY it means that it is not
maintaining the TX queues stop/start state properly.
It was kept around for drivers that we didn't want to convert
or fix up at the time (this is circa two decades ago).
I realize that there are situations for some devices where this is
difficult to achieve, but the stack really does a non-trivial amount
of useless work if you don't play along nicely.
If you grep drivers/net for it, the majority of the returns are in
assertion failure paths in the TX handler of those drivers.
NETDEV_TX_BUSY is not being returned in a normal path of operation.
> (Does it really BUG_ON?)
No, it doesn't.
--
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