From: "Yuval Mintz" <yuvalmin@broadcom.com>
To: davem@davemloft.net, netdev@vger.kernel.org
Cc: eilong@broadcom.com, "Yuval Mintz" <yuvalmin@broadcom.com>
Subject: [PATCH net-next 01/11] net-next: Add netif_get_num_default_rss_queues
Date: Sun, 1 Jul 2012 16:18:50 +0300 [thread overview]
Message-ID: <1341148740-7375-2-git-send-email-yuvalmin@broadcom.com> (raw)
In-Reply-To: <1341148740-7375-1-git-send-email-yuvalmin@broadcom.com>
Most multi-queue networking driver consider the number of online cpus when
configuring RSS queues.
This patch adds a wrapper to the number of cpus, setting an upper limit on the
number of cpus a driver should consider (by default) when allocating resources
for his queues.
Signed-off-by: Yuval Mintz <yuvalmin@broadcom.com>
Signed-off-by: Eilon Greenstein <eilong@broadcom.com>
---
include/linux/netdevice.h | 3 +++
net/core/dev.c | 11 +++++++++++
2 files changed, 14 insertions(+), 0 deletions(-)
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index 2c2ecea..ab0251d 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -2119,6 +2119,9 @@ static inline int netif_copy_real_num_queues(struct net_device *to_dev,
#endif
}
+#define DEFAULT_MAX_NUM_RSS_QUEUES (8)
+extern int netif_get_num_default_rss_queues(void);
+
/* Use this variant when it is known for sure that it
* is executing from hardware interrupt context or with hardware interrupts
* disabled.
diff --git a/net/core/dev.c b/net/core/dev.c
index ed674e2..69f7a1a 100644
--- a/net/core/dev.c
+++ b/net/core/dev.c
@@ -1793,6 +1793,17 @@ int netif_set_real_num_rx_queues(struct net_device *dev, unsigned int rxq)
EXPORT_SYMBOL(netif_set_real_num_rx_queues);
#endif
+/* netif_get_num_default_rss_queues - default number of RSS queues
+ *
+ * This routine should set an upper limit on the number of RSS queues
+ * used by default by multiqueue devices.
+ */
+int netif_get_num_default_rss_queues()
+{
+ return min_t(int, DEFAULT_MAX_NUM_RSS_QUEUES, num_online_cpus());
+}
+EXPORT_SYMBOL(netif_get_num_default_rss_queues);
+
static inline void __netif_reschedule(struct Qdisc *q)
{
struct softnet_data *sd;
--
1.7.9.rc2
next prev parent reply other threads:[~2012-07-01 13:20 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-07-01 13:18 [PATCH net-next 00/11] default maximal number of RSS queues in mq drivers Yuval Mintz
2012-07-01 13:18 ` Yuval Mintz [this message]
2012-07-01 13:18 ` [PATCH net-next 02/11] mlx4: set maximal number of default RSS queues Yuval Mintz
2012-07-01 13:18 ` [PATCH net-next 03/11] vxge: " Yuval Mintz
2012-07-01 13:18 ` [PATCH net-next 04/11] qlge: " Yuval Mintz
2012-07-01 13:18 ` [PATCH net-next 05/11] cxgb3: " Yuval Mintz
2012-07-01 13:18 ` [PATCH net-next 06/11] cxgb4: " Yuval Mintz
2012-07-01 13:18 ` [PATCH net-next 07/11] myri10ge: " Yuval Mintz
2012-07-01 13:18 ` [PATCH net-next 08/11] tg3: " Yuval Mintz
2012-07-01 13:18 ` [PATCH net-next 09/11] bnx2: " Yuval Mintz
2012-07-01 13:18 ` [PATCH net-next 10/11] bnx2x: " Yuval Mintz
2012-07-01 13:19 ` [PATCH net-next 11/11] be2net: " Yuval Mintz
2012-07-01 15:01 ` [PATCH net-next 00/11] default maximal number of RSS queues in mq drivers Or Gerlitz
2012-07-02 4:55 ` Yuval Mintz
2012-07-05 10:07 ` David Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1341148740-7375-2-git-send-email-yuvalmin@broadcom.com \
--to=yuvalmin@broadcom.com \
--cc=davem@davemloft.net \
--cc=eilong@broadcom.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.