login
Header Space

 
 

RE: [RFC/RFT 4/4] mac80211: use multi-queue master netdevice

Score:
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Johannes Berg <johannes@...>, <linux-wireless@...>
Cc: <netdev@...>, Rindjunsky, Ron <ron.rindjunsky@...>, Tomas Winkler <tomasw@...>, Ivo van Doorn <ivdoorn@...>
Date: Wednesday, April 30, 2008 - 3:39 pm

> --- everything.orig/net/mac80211/util.c	2008-04-30 

I would suggest that you enable the netdev feature flag for
NETIF_F_MULTI_QUEUE on devices when you create them.  That way you can
have things like ieee80211_start_queue() key on that instead of a
compile-time option, in case wireless devices come along that won't
support multiple queues, if that's possible.  So something like this:

+void ieee80211_start_queue(struct ieee80211_hw *hw, int queue)
+{
+	struct ieee80211_local *local = hw_to_local(hw);
+	if (netif_is_multiqueue(local->mdev) {
+		netif_start_subqueue(local->mdev, queue);
+	} else {
+		WARN_ON(queue != 0);
+		netif_start_queue(local->mdev);
+	}
+}
+EXPORT_SYMBOL(ieee80211_start_queue);
+

If you think this is a decent idea, I'd suggest that any function that
has a compile-time check for multiqueue being changed to use the runtime
check.  Then in your device setup, where you call netdev_alloc_mq(),
there you set the flag NETIF_F_MULTI_QUEUE based on the device features.

Other than that, this patch looks great.  Exciting to see this starting
to take flight.

Cheers,
-PJ Waskiewicz
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[RFC/RFT 4/4] mac80211: use multi-queue master netdevice, Johannes Berg, (Wed Apr 30, 8:40 am)
RE: [RFC/RFT 4/4] mac80211: use multi-queue master netdevice, Waskiewicz Jr, Peter P, (Wed Apr 30, 3:39 pm)
speck-geostationary