| From foo@baz Tue Jan 26 21:37:04 PST 2016 |
| From: Wei Liu <wei.liu2@citrix.com> |
| Date: Thu, 10 Sep 2015 11:18:58 +0100 |
| Subject: xen-netfront: respect user provided max_queues |
| |
| From: Wei Liu <wei.liu2@citrix.com> |
| |
| [ Upstream commit 32a844056fd43dda647e1c3c6b9983bdfa04d17d ] |
| |
| 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. |
| |
| Signed-off-by: Wei Liu <wei.liu2@citrix.com> |
| Cc: David Vrabel <david.vrabel@citrix.com> |
| Reviewed-by: David Vrabel <david.vrabel@citrix.com> |
| Tested-by: David Vrabel <david.vrabel@citrix.com> |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/net/xen-netfront.c | 7 +++++-- |
| 1 file changed, 5 insertions(+), 2 deletions(-) |
| |
| --- a/drivers/net/xen-netfront.c |
| +++ b/drivers/net/xen-netfront.c |
| @@ -2140,8 +2140,11 @@ static int __init netif_init(void) |
| |
| pr_info("Initialising Xen virtual ethernet driver\n"); |
| |
| - /* Allow as many queues as there are CPUs, by default */ |
| - xennet_max_queues = num_online_cpus(); |
| + /* Allow as many queues as there are CPUs if user has not |
| + * specified a value. |
| + */ |
| + if (xennet_max_queues == 0) |
| + xennet_max_queues = num_online_cpus(); |
| |
| return xenbus_register_frontend(&netfront_driver); |
| } |