* [PATCH net] xen-netback: respect user provided max_queues
@ 2015-09-09 10:09 Wei Liu
2015-09-09 10:12 ` David Vrabel
0 siblings, 1 reply; 4+ messages in thread
From: Wei Liu @ 2015-09-09 10:09 UTC (permalink / raw)
To: Xen-devel, netdev; +Cc: Wei Liu, Ian Campbell, Johnny Strom, David Vrabel
Originally that parameter was always reset to num_online_cpus during
module initialisation, which renders it useless.
The fix is to only set max_queues to num_online_cpus when user has not
provided a value.
Reported-by: Johnny Strom <johnny.strom@linuxsolutions.fi>
Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Cc: Ian Campbell <ian.campbell@citrix.com>
---
Cc: Johnny Strom <johnny.strom@linuxsolutions.fi>
Cc: David Vrabel <david.vrabel@citrix.com>
---
drivers/net/xen-netback/netback.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/drivers/net/xen-netback/netback.c b/drivers/net/xen-netback/netback.c
index 42569b9..b219a80 100644
--- a/drivers/net/xen-netback/netback.c
+++ b/drivers/net/xen-netback/netback.c
@@ -67,7 +67,7 @@ module_param(rx_drain_timeout_msecs, uint, 0444);
unsigned int rx_stall_timeout_msecs = 60000;
module_param(rx_stall_timeout_msecs, uint, 0444);
-unsigned int xenvif_max_queues;
+unsigned int xenvif_max_queues = 0;
module_param_named(max_queues, xenvif_max_queues, uint, 0644);
MODULE_PARM_DESC(max_queues,
"Maximum number of queues per virtual interface");
@@ -2105,8 +2105,11 @@ static int __init netback_init(void)
if (!xen_domain())
return -ENODEV;
- /* Allow as many queues as there are CPUs, by default */
- xenvif_max_queues = num_online_cpus();
+ /* Allow as many queues as there are CPUs if user has not
+ * specified a value.
+ */
+ if (xenvif_max_queues == 0)
+ xenvif_max_queues = num_online_cpus();
if (fatal_skb_slots < XEN_NETBK_LEGACY_SLOTS_MAX) {
pr_info("fatal_skb_slots too small (%d), bump it to XEN_NETBK_LEGACY_SLOTS_MAX (%d)\n",
--
2.1.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH net] xen-netback: respect user provided max_queues
2015-09-09 10:09 [PATCH net] xen-netback: respect user provided max_queues Wei Liu
@ 2015-09-09 10:12 ` David Vrabel
2015-09-09 10:16 ` Wei Liu
0 siblings, 1 reply; 4+ messages in thread
From: David Vrabel @ 2015-09-09 10:12 UTC (permalink / raw)
To: Wei Liu, Xen-devel, netdev; +Cc: Ian Campbell, Johnny Strom
On 09/09/15 11:09, Wei Liu wrote:
> Originally that parameter was always reset to num_online_cpus during
> module initialisation, which renders it useless.
>
> The fix is to only set max_queues to num_online_cpus when user has not
> provided a value.
[...]
> --- a/drivers/net/xen-netback/netback.c
> +++ b/drivers/net/xen-netback/netback.c
> @@ -67,7 +67,7 @@ module_param(rx_drain_timeout_msecs, uint, 0444);
> unsigned int rx_stall_timeout_msecs = 60000;
> module_param(rx_stall_timeout_msecs, uint, 0444);
>
> -unsigned int xenvif_max_queues;
> +unsigned int xenvif_max_queues = 0;
You don't need this.
Otherwise,
Reviewed-by: David Vrabel <david.vrabel@citrix.com>
Is an equivalent fix needed in netfront?
David
> module_param_named(max_queues, xenvif_max_queues, uint, 0644);
> MODULE_PARM_DESC(max_queues,
> "Maximum number of queues per virtual interface");
> @@ -2105,8 +2105,11 @@ static int __init netback_init(void)
> if (!xen_domain())
> return -ENODEV;
>
> - /* Allow as many queues as there are CPUs, by default */
> - xenvif_max_queues = num_online_cpus();
> + /* Allow as many queues as there are CPUs if user has not
> + * specified a value.
> + */
> + if (xenvif_max_queues == 0)
> + xenvif_max_queues = num_online_cpus();
>
> if (fatal_skb_slots < XEN_NETBK_LEGACY_SLOTS_MAX) {
> pr_info("fatal_skb_slots too small (%d), bump it to XEN_NETBK_LEGACY_SLOTS_MAX (%d)\n",
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH net] xen-netback: respect user provided max_queues
2015-09-09 10:12 ` David Vrabel
@ 2015-09-09 10:16 ` Wei Liu
2015-09-09 10:29 ` Ian Campbell
0 siblings, 1 reply; 4+ messages in thread
From: Wei Liu @ 2015-09-09 10:16 UTC (permalink / raw)
To: David Vrabel; +Cc: Wei Liu, Xen-devel, netdev, Ian Campbell, Johnny Strom
On Wed, Sep 09, 2015 at 11:12:44AM +0100, David Vrabel wrote:
> On 09/09/15 11:09, Wei Liu wrote:
> > Originally that parameter was always reset to num_online_cpus during
> > module initialisation, which renders it useless.
> >
> > The fix is to only set max_queues to num_online_cpus when user has not
> > provided a value.
> [...]
> > --- a/drivers/net/xen-netback/netback.c
> > +++ b/drivers/net/xen-netback/netback.c
> > @@ -67,7 +67,7 @@ module_param(rx_drain_timeout_msecs, uint, 0444);
> > unsigned int rx_stall_timeout_msecs = 60000;
> > module_param(rx_stall_timeout_msecs, uint, 0444);
> >
> > -unsigned int xenvif_max_queues;
> > +unsigned int xenvif_max_queues = 0;
>
> You don't need this.
>
> Otherwise,
>
> Reviewed-by: David Vrabel <david.vrabel@citrix.com>
>
> Is an equivalent fix needed in netfront?
>
I think so.
I will address your comment and send both fixes (front and back) in a
series.
Wei.
> David
>
> > module_param_named(max_queues, xenvif_max_queues, uint, 0644);
> > MODULE_PARM_DESC(max_queues,
> > "Maximum number of queues per virtual interface");
> > @@ -2105,8 +2105,11 @@ static int __init netback_init(void)
> > if (!xen_domain())
> > return -ENODEV;
> >
> > - /* Allow as many queues as there are CPUs, by default */
> > - xenvif_max_queues = num_online_cpus();
> > + /* Allow as many queues as there are CPUs if user has not
> > + * specified a value.
> > + */
> > + if (xenvif_max_queues == 0)
> > + xenvif_max_queues = num_online_cpus();
> >
> > if (fatal_skb_slots < XEN_NETBK_LEGACY_SLOTS_MAX) {
> > pr_info("fatal_skb_slots too small (%d), bump it to XEN_NETBK_LEGACY_SLOTS_MAX (%d)\n",
> >
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH net] xen-netback: respect user provided max_queues
2015-09-09 10:16 ` Wei Liu
@ 2015-09-09 10:29 ` Ian Campbell
0 siblings, 0 replies; 4+ messages in thread
From: Ian Campbell @ 2015-09-09 10:29 UTC (permalink / raw)
To: Wei Liu, David Vrabel; +Cc: Xen-devel, netdev, Johnny Strom
On Wed, 2015-09-09 at 11:16 +0100, Wei Liu wrote:
> On Wed, Sep 09, 2015 at 11:12:44AM +0100, David Vrabel wrote:
> > On 09/09/15 11:09, Wei Liu wrote:
> > > Originally that parameter was always reset to num_online_cpus during
> > > module initialisation, which renders it useless.
> > >
> > > The fix is to only set max_queues to num_online_cpus when user has
> > > not
> > > provided a value.
> > [...]
> > > --- a/drivers/net/xen-netback/netback.c
> > > +++ b/drivers/net/xen-netback/netback.c
> > > @@ -67,7 +67,7 @@ module_param(rx_drain_timeout_msecs, uint, 0444);
> > > unsigned int rx_stall_timeout_msecs = 60000;
> > > module_param(rx_stall_timeout_msecs, uint, 0444);
> > >
> > > -unsigned int xenvif_max_queues;
> > > +unsigned int xenvif_max_queues = 0;
> >
> > You don't need this.
> >
> > Otherwise,
> >
> > Reviewed-by: David Vrabel <david.vrabel@citrix.com>
> >
> > Is an equivalent fix needed in netfront?
> >
>
> I think so.
>
> I will address your comment
With that: Acked-by: Ian Campbell <ian.campbell@citrix.com>
> and send both fixes (front and back) in a
> series.
>
> Wei.
>
> > David
> >
> > > module_param_named(max_queues, xenvif_max_queues, uint, 0644);
> > > MODULE_PARM_DESC(max_queues,
> > > "Maximum number of queues per virtual interface");
> > > @@ -2105,8 +2105,11 @@ static int __init netback_init(void)
> > > if (!xen_domain())
> > > return -ENODEV;
> > >
> > > - /* Allow as many queues as there are CPUs, by default */
> > > - xenvif_max_queues = num_online_cpus();
> > > + /* Allow as many queues as there are CPUs if user has not
> > > + * specified a value.
> > > + */
> > > + if (xenvif_max_queues == 0)
> > > + xenvif_max_queues = num_online_cpus();
> > >
> > > if (fatal_skb_slots < XEN_NETBK_LEGACY_SLOTS_MAX) {
> > > pr_info("fatal_skb_slots too small (%d), bump it to
> > > XEN_NETBK_LEGACY_SLOTS_MAX (%d)\n",
> > >
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2015-09-09 10:29 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-09-09 10:09 [PATCH net] xen-netback: respect user provided max_queues Wei Liu
2015-09-09 10:12 ` David Vrabel
2015-09-09 10:16 ` Wei Liu
2015-09-09 10:29 ` Ian Campbell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).