On 11/12/2012 1:03 PM, Adrian Chadd wrote:
The if_transmit versus multiqueue thing is orthogonal.
Indeed, although ALTQ isn't using if_transmit and doing a simple drop in
(replacing if_start with if_transmit) breaks ALTQ with multiqueue
capable drivers.
I'm planning to make net80211 and ath(4) use if_transmit instead of
if_start. It won't be a multi-queue driver; I'm actually going down
the path of if_transmit specifically so I can control the TX queue
serialisation and actively _serialise_ frame TX, instead of
implementing a multi-queue driver.
ALTQ as a concept needs to be glued in a different way. It can't just
override the queue macros like it does. That's just plain ew.
I agree. I think ALTQ should maintain its own queues and locks and not
rely on drivers for queue management.
net80211 has some rather quirky behaviour, unfortunately. I won't go
into it here. Suffice to say, I can't just use the IFQ macros, the
if_queue as it stands, nor buf_ring.
Adrian
_______________________________________________
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"
_______________________________________________
freebsd-net@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"