* [PATCH net-next, 0/4] cleanups and fixes of channel settings
@ 2017-09-01 21:30 Haiyang Zhang
2017-09-01 21:30 ` [PATCH net-next, 1/4] hv_netvsc: Clean up an unused parameter in rndis_filter_set_rss_param() Haiyang Zhang
` (5 more replies)
0 siblings, 6 replies; 7+ messages in thread
From: Haiyang Zhang @ 2017-09-01 21:30 UTC (permalink / raw)
To: davem, netdev; +Cc: haiyangz, kys, olaf, vkuznets, linux-kernel
From: Haiyang Zhang <haiyangz@microsoft.com>
This patch set cleans up some unused variables, unnecessary checks.
Also fixed some limit checking of channel number.
Haiyang Zhang (4):
hv_netvsc: Clean up an unused parameter in rndis_filter_set_rss_param()
hv_netvsc: Simplify num_chn checking in rndis_filter_device_add()
hv_netvsc: Simplify the limit check in netvsc_set_channels()
hv_netvsc: Fix the channel limit in netvsc_set_rxfh()
drivers/net/hyperv/hyperv_net.h | 2 +-
drivers/net/hyperv/netvsc_drv.c | 7 ++-----
drivers/net/hyperv/rndis_filter.c | 11 +++++------
3 files changed, 8 insertions(+), 12 deletions(-)
--
2.14.1
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH net-next, 1/4] hv_netvsc: Clean up an unused parameter in rndis_filter_set_rss_param()
2017-09-01 21:30 [PATCH net-next, 0/4] cleanups and fixes of channel settings Haiyang Zhang
@ 2017-09-01 21:30 ` Haiyang Zhang
2017-09-01 21:30 ` [PATCH net-next, 2/4] hv_netvsc: Simplify num_chn checking in rndis_filter_device_add() Haiyang Zhang
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Haiyang Zhang @ 2017-09-01 21:30 UTC (permalink / raw)
To: davem, netdev; +Cc: haiyangz, kys, olaf, vkuznets, linux-kernel
From: Haiyang Zhang <haiyangz@microsoft.com>
This patch removes the parameter, num_queue in
rndis_filter_set_rss_param(), which is no longer in use.
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
---
drivers/net/hyperv/hyperv_net.h | 2 +-
drivers/net/hyperv/netvsc_drv.c | 2 +-
drivers/net/hyperv/rndis_filter.c | 5 ++---
3 files changed, 4 insertions(+), 5 deletions(-)
diff --git a/drivers/net/hyperv/hyperv_net.h b/drivers/net/hyperv/hyperv_net.h
index ff1c0c8d5e0d..ec546da86683 100644
--- a/drivers/net/hyperv/hyperv_net.h
+++ b/drivers/net/hyperv/hyperv_net.h
@@ -213,7 +213,7 @@ void rndis_filter_update(struct netvsc_device *nvdev);
void rndis_filter_device_remove(struct hv_device *dev,
struct netvsc_device *nvdev);
int rndis_filter_set_rss_param(struct rndis_device *rdev,
- const u8 *key, int num_queue);
+ const u8 *key);
int rndis_filter_receive(struct net_device *ndev,
struct netvsc_device *net_dev,
struct hv_device *dev,
diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
index 97ed4bdc439f..b8e23e257f00 100644
--- a/drivers/net/hyperv/netvsc_drv.c
+++ b/drivers/net/hyperv/netvsc_drv.c
@@ -1424,7 +1424,7 @@ static int netvsc_set_rxfh(struct net_device *dev, const u32 *indir,
key = rndis_dev->rss_key;
}
- return rndis_filter_set_rss_param(rndis_dev, key, ndev->num_chn);
+ return rndis_filter_set_rss_param(rndis_dev, key);
}
/* Hyper-V RNDIS protocol does not have ring in the HW sense.
diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
index 36e9ee82ec6f..496fefa7c7c4 100644
--- a/drivers/net/hyperv/rndis_filter.c
+++ b/drivers/net/hyperv/rndis_filter.c
@@ -717,7 +717,7 @@ rndis_filter_set_offload_params(struct net_device *ndev,
}
int rndis_filter_set_rss_param(struct rndis_device *rdev,
- const u8 *rss_key, int num_queue)
+ const u8 *rss_key)
{
struct net_device *ndev = rdev->ndev;
struct rndis_request *request;
@@ -1258,8 +1258,7 @@ struct netvsc_device *rndis_filter_device_add(struct hv_device *dev,
atomic_read(&net_device->open_chn) == net_device->num_chn);
/* ignore failues from setting rss parameters, still have channels */
- rndis_filter_set_rss_param(rndis_device, netvsc_hash_key,
- net_device->num_chn);
+ rndis_filter_set_rss_param(rndis_device, netvsc_hash_key);
out:
if (ret) {
net_device->max_chn = 1;
--
2.14.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH net-next, 2/4] hv_netvsc: Simplify num_chn checking in rndis_filter_device_add()
2017-09-01 21:30 [PATCH net-next, 0/4] cleanups and fixes of channel settings Haiyang Zhang
2017-09-01 21:30 ` [PATCH net-next, 1/4] hv_netvsc: Clean up an unused parameter in rndis_filter_set_rss_param() Haiyang Zhang
@ 2017-09-01 21:30 ` Haiyang Zhang
2017-09-01 21:30 ` [PATCH net-next, 3/4] hv_netvsc: Simplify the limit check in netvsc_set_channels() Haiyang Zhang
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Haiyang Zhang @ 2017-09-01 21:30 UTC (permalink / raw)
To: davem, netdev; +Cc: haiyangz, kys, olaf, vkuznets, linux-kernel
From: Haiyang Zhang <haiyangz@microsoft.com>
The minus one and assignment to a local variable is not necessary.
This patch simplifies it.
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
---
drivers/net/hyperv/rndis_filter.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/net/hyperv/rndis_filter.c b/drivers/net/hyperv/rndis_filter.c
index 496fefa7c7c4..69c40b8fccc3 100644
--- a/drivers/net/hyperv/rndis_filter.c
+++ b/drivers/net/hyperv/rndis_filter.c
@@ -1067,7 +1067,7 @@ struct netvsc_device *rndis_filter_device_add(struct hv_device *dev,
struct ndis_recv_scale_cap rsscap;
u32 rsscap_size = sizeof(struct ndis_recv_scale_cap);
unsigned int gso_max_size = GSO_MAX_SIZE;
- u32 mtu, size, num_rss_qs;
+ u32 mtu, size;
const struct cpumask *node_cpu_mask;
u32 num_possible_rss_qs;
int i, ret;
@@ -1215,8 +1215,8 @@ struct netvsc_device *rndis_filter_device_add(struct hv_device *dev,
net_device->num_chn);
atomic_set(&net_device->open_chn, 1);
- num_rss_qs = net_device->num_chn - 1;
- if (num_rss_qs == 0)
+
+ if (net_device->num_chn == 1)
return net_device;
for (i = 1; i < net_device->num_chn; i++) {
--
2.14.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH net-next, 3/4] hv_netvsc: Simplify the limit check in netvsc_set_channels()
2017-09-01 21:30 [PATCH net-next, 0/4] cleanups and fixes of channel settings Haiyang Zhang
2017-09-01 21:30 ` [PATCH net-next, 1/4] hv_netvsc: Clean up an unused parameter in rndis_filter_set_rss_param() Haiyang Zhang
2017-09-01 21:30 ` [PATCH net-next, 2/4] hv_netvsc: Simplify num_chn checking in rndis_filter_device_add() Haiyang Zhang
@ 2017-09-01 21:30 ` Haiyang Zhang
2017-09-01 21:30 ` [PATCH net-next, 4/4] hv_netvsc: Fix the channel limit in netvsc_set_rxfh() Haiyang Zhang
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Haiyang Zhang @ 2017-09-01 21:30 UTC (permalink / raw)
To: davem, netdev; +Cc: haiyangz, kys, olaf, vkuznets, linux-kernel
From: Haiyang Zhang <haiyangz@microsoft.com>
Because of the following code, net->num_tx_queues equals to
VRSS_CHANNEL_MAX, and max_chn is less than or equals to VRSS_CHANNEL_MAX.
netvsc_drv.c:
alloc_etherdev_mq(sizeof(struct net_device_context),
VRSS_CHANNEL_MAX);
rndis_filter.c:
net_device->max_chn = min_t(u32, VRSS_CHANNEL_MAX, num_possible_rss_qs);
So this patch removes the unnecessary limit check before comparing
with "max_chn".
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
---
drivers/net/hyperv/netvsc_drv.c | 3 ---
1 file changed, 3 deletions(-)
diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
index b8e23e257f00..718d126108f6 100644
--- a/drivers/net/hyperv/netvsc_drv.c
+++ b/drivers/net/hyperv/netvsc_drv.c
@@ -830,9 +830,6 @@ static int netvsc_set_channels(struct net_device *net,
channels->rx_count || channels->tx_count || channels->other_count)
return -EINVAL;
- if (count > net->num_tx_queues || count > VRSS_CHANNEL_MAX)
- return -EINVAL;
-
if (!nvdev || nvdev->destroy)
return -ENODEV;
--
2.14.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH net-next, 4/4] hv_netvsc: Fix the channel limit in netvsc_set_rxfh()
2017-09-01 21:30 [PATCH net-next, 0/4] cleanups and fixes of channel settings Haiyang Zhang
` (2 preceding siblings ...)
2017-09-01 21:30 ` [PATCH net-next, 3/4] hv_netvsc: Simplify the limit check in netvsc_set_channels() Haiyang Zhang
@ 2017-09-01 21:30 ` Haiyang Zhang
2017-09-01 21:36 ` [PATCH net-next, 0/4] cleanups and fixes of channel settings Stephen Hemminger
2017-09-02 3:39 ` David Miller
5 siblings, 0 replies; 7+ messages in thread
From: Haiyang Zhang @ 2017-09-01 21:30 UTC (permalink / raw)
To: davem, netdev; +Cc: haiyangz, kys, olaf, vkuznets, linux-kernel
From: Haiyang Zhang <haiyangz@microsoft.com>
The limit of setting receive indirection table value should be
the current number of channels, not the VRSS_CHANNEL_MAX.
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
---
drivers/net/hyperv/netvsc_drv.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
index 718d126108f6..9205235ba21c 100644
--- a/drivers/net/hyperv/netvsc_drv.c
+++ b/drivers/net/hyperv/netvsc_drv.c
@@ -1407,7 +1407,7 @@ static int netvsc_set_rxfh(struct net_device *dev, const u32 *indir,
rndis_dev = ndev->extension;
if (indir) {
for (i = 0; i < ITAB_NUM; i++)
- if (indir[i] >= VRSS_CHANNEL_MAX)
+ if (indir[i] >= ndev->num_chn)
return -EINVAL;
for (i = 0; i < ITAB_NUM; i++)
--
2.14.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH net-next, 0/4] cleanups and fixes of channel settings
2017-09-01 21:30 [PATCH net-next, 0/4] cleanups and fixes of channel settings Haiyang Zhang
` (3 preceding siblings ...)
2017-09-01 21:30 ` [PATCH net-next, 4/4] hv_netvsc: Fix the channel limit in netvsc_set_rxfh() Haiyang Zhang
@ 2017-09-01 21:36 ` Stephen Hemminger
2017-09-02 3:39 ` David Miller
5 siblings, 0 replies; 7+ messages in thread
From: Stephen Hemminger @ 2017-09-01 21:36 UTC (permalink / raw)
To: Haiyang Zhang; +Cc: haiyangz, davem, netdev, kys, olaf, vkuznets, linux-kernel
On Fri, 1 Sep 2017 14:30:03 -0700
Haiyang Zhang <haiyangz@exchange.microsoft.com> wrote:
> From: Haiyang Zhang <haiyangz@microsoft.com>
>
> This patch set cleans up some unused variables, unnecessary checks.
> Also fixed some limit checking of channel number.
>
>
> Haiyang Zhang (4):
> hv_netvsc: Clean up an unused parameter in rndis_filter_set_rss_param()
> hv_netvsc: Simplify num_chn checking in rndis_filter_device_add()
> hv_netvsc: Simplify the limit check in netvsc_set_channels()
> hv_netvsc: Fix the channel limit in netvsc_set_rxfh()
>
> drivers/net/hyperv/hyperv_net.h | 2 +-
> drivers/net/hyperv/netvsc_drv.c | 7 ++-----
> drivers/net/hyperv/rndis_filter.c | 11 +++++------
> 3 files changed, 8 insertions(+), 12 deletions(-)
>
Reviewed-by: Stephen Hemminger <sthemmin@microsoft.com>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH net-next, 0/4] cleanups and fixes of channel settings
2017-09-01 21:30 [PATCH net-next, 0/4] cleanups and fixes of channel settings Haiyang Zhang
` (4 preceding siblings ...)
2017-09-01 21:36 ` [PATCH net-next, 0/4] cleanups and fixes of channel settings Stephen Hemminger
@ 2017-09-02 3:39 ` David Miller
5 siblings, 0 replies; 7+ messages in thread
From: David Miller @ 2017-09-02 3:39 UTC (permalink / raw)
To: haiyangz, haiyangz; +Cc: netdev, kys, olaf, vkuznets, linux-kernel
From: Haiyang Zhang <haiyangz@exchange.microsoft.com>
Date: Fri, 1 Sep 2017 14:30:03 -0700
> This patch set cleans up some unused variables, unnecessary checks.
> Also fixed some limit checking of channel number.
Series applied.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2017-09-02 3:39 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-09-01 21:30 [PATCH net-next, 0/4] cleanups and fixes of channel settings Haiyang Zhang
2017-09-01 21:30 ` [PATCH net-next, 1/4] hv_netvsc: Clean up an unused parameter in rndis_filter_set_rss_param() Haiyang Zhang
2017-09-01 21:30 ` [PATCH net-next, 2/4] hv_netvsc: Simplify num_chn checking in rndis_filter_device_add() Haiyang Zhang
2017-09-01 21:30 ` [PATCH net-next, 3/4] hv_netvsc: Simplify the limit check in netvsc_set_channels() Haiyang Zhang
2017-09-01 21:30 ` [PATCH net-next, 4/4] hv_netvsc: Fix the channel limit in netvsc_set_rxfh() Haiyang Zhang
2017-09-01 21:36 ` [PATCH net-next, 0/4] cleanups and fixes of channel settings Stephen Hemminger
2017-09-02 3:39 ` David Miller
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).