Message ID | 1457616110-225844-2-git-send-email-yankejian@huawei.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Hi Kejian,
[auto build test WARNING on net-next/master]
url: https://github.com/0day-ci/linux/commits/Kejian-Yan/net-hns-get-and-set-RSS-indirection-table-by-using-ethtool/20160310-210648
config: x86_64-allyesconfig (attached as .config)
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64
All warnings (new ones prefixed by >>):
drivers/net/ethernet/hisilicon/hns/hns_ethtool.c: In function 'hns_get_rss':
>> drivers/net/ethernet/hisilicon/hns/hns_ethtool.c:1214:6: warning: unused variable 'ret' [-Wunused-variable]
int ret;
^
drivers/net/ethernet/hisilicon/hns/hns_ethtool.c: In function 'hns_set_rss':
drivers/net/ethernet/hisilicon/hns/hns_ethtool.c:1236:6: warning: unused variable 'ret' [-Wunused-variable]
int ret;
^
vim +/ret +1214 drivers/net/ethernet/hisilicon/hns/hns_ethtool.c
6bc0ce7d Salil 2015-12-03 1198 netdev_err(netdev,
6bc0ce7d Salil 2015-12-03 1199 "RSS feature is not supported on this hardware\n");
73f4f566 Kejian Yan 2016-03-10 1200 return (u32)-EOPNOTSUPP;
6bc0ce7d Salil 2015-12-03 1201 }
6bc0ce7d Salil 2015-12-03 1202
6bc0ce7d Salil 2015-12-03 1203 ops = priv->ae_handle->dev->ops;
6bc0ce7d Salil 2015-12-03 1204 ret = ops->get_rss_indir_size(priv->ae_handle);
6bc0ce7d Salil 2015-12-03 1205
6bc0ce7d Salil 2015-12-03 1206 return ret;
6bc0ce7d Salil 2015-12-03 1207 }
6bc0ce7d Salil 2015-12-03 1208
6bc0ce7d Salil 2015-12-03 1209 static int
6bc0ce7d Salil 2015-12-03 1210 hns_get_rss(struct net_device *netdev, u32 *indir, u8 *key, u8 *hfunc)
6bc0ce7d Salil 2015-12-03 1211 {
6bc0ce7d Salil 2015-12-03 1212 struct hns_nic_priv *priv = netdev_priv(netdev);
6bc0ce7d Salil 2015-12-03 1213 struct hnae_ae_ops *ops;
6bc0ce7d Salil 2015-12-03 @1214 int ret;
6bc0ce7d Salil 2015-12-03 1215
6bc0ce7d Salil 2015-12-03 1216 if (AE_IS_VER1(priv->enet_ver)) {
6bc0ce7d Salil 2015-12-03 1217 netdev_err(netdev,
6bc0ce7d Salil 2015-12-03 1218 "RSS feature is not supported on this hardware\n");
6bc0ce7d Salil 2015-12-03 1219 return -EOPNOTSUPP;
6bc0ce7d Salil 2015-12-03 1220 }
6bc0ce7d Salil 2015-12-03 1221
6bc0ce7d Salil 2015-12-03 1222 ops = priv->ae_handle->dev->ops;
:::::: The code at line 1214 was first introduced by commit
:::::: 6bc0ce7d9adabf332afc102f7f97bf121b990ece net:hns: Add Hip06 "RSS(Receive Side Scaling)" support to HNS Driver
:::::: TO: Salil <salil.mehta@huawei.com>
:::::: CC: David S. Miller <davem@davemloft.net>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
diff --git a/drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c b/drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c index d4f92ed..d07db1f 100644 --- a/drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c +++ b/drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c @@ -799,7 +799,7 @@ static int hns_ae_set_rss(struct hnae_handle *handle, const u32 *indir, /* set the RSS Hash Key if specififed by the user */ if (key) - hns_ppe_set_rss_key(ppe_cb, (int *)key); + hns_ppe_set_rss_key(ppe_cb, (u32 *)key); /* update the shadow RSS table with user specified qids */ memcpy(ppe_cb->rss_indir_table, indir, HNS_PPEV2_RSS_IND_TBL_SIZE); diff --git a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_ppe.c b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_ppe.c index f302ef9..811ef35 100644 --- a/drivers/net/ethernet/hisilicon/hns/hns_dsaf_ppe.c +++ b/drivers/net/ethernet/hisilicon/hns/hns_dsaf_ppe.c @@ -27,7 +27,7 @@ void hns_ppe_set_tso_enable(struct hns_ppe_cb *ppe_cb, u32 value) void hns_ppe_set_rss_key(struct hns_ppe_cb *ppe_cb, const u32 rss_key[HNS_PPEV2_RSS_KEY_NUM]) { - int key_item = 0; + u32 key_item = 0; for (key_item = 0; key_item < HNS_PPEV2_RSS_KEY_NUM; key_item++) dsaf_write_dev(ppe_cb, PPEV2_RSS_KEY_REG + key_item * 0x4, diff --git a/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c b/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c index 3c4a3bc..3b914ac 100644 --- a/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c +++ b/drivers/net/ethernet/hisilicon/hns/hns_ethtool.c @@ -1178,7 +1178,7 @@ hns_get_rss_key_size(struct net_device *netdev) if (AE_IS_VER1(priv->enet_ver)) { netdev_err(netdev, "RSS feature is not supported on this hardware\n"); - return -EOPNOTSUPP; + return (u32)-EOPNOTSUPP; } ops = priv->ae_handle->dev->ops; @@ -1197,7 +1197,7 @@ hns_get_rss_indir_size(struct net_device *netdev) if (AE_IS_VER1(priv->enet_ver)) { netdev_err(netdev, "RSS feature is not supported on this hardware\n"); - return -EOPNOTSUPP; + return (u32)-EOPNOTSUPP; } ops = priv->ae_handle->dev->ops; @@ -1224,9 +1224,7 @@ hns_get_rss(struct net_device *netdev, u32 *indir, u8 *key, u8 *hfunc) if (!indir) return 0; - ret = ops->get_rss(priv->ae_handle, indir, key, hfunc); - - return 0; + return ops->get_rss(priv->ae_handle, indir, key, hfunc); } static int @@ -1252,9 +1250,7 @@ hns_set_rss(struct net_device *netdev, const u32 *indir, const u8 *key, if (!indir) return 0; - ret = ops->set_rss(priv->ae_handle, indir, key, hfunc); - - return 0; + return ops->set_rss(priv->ae_handle, indir, key, hfunc); } static struct ethtool_ops hns_ethtool_ops = {
Both .get_rxfh and .get_rxfh are always return 0, it should return result from hardware when getting or setting rss. And the rss function should return the correct data type. Signed-off-by: Kejian Yan <yankejian@huawei.com> --- change log: PATCH v2: - This patch fixes the comments provided by Andy Shevchenko <Andy Shevchenko> PATCH v1: - first submit Link: https://lkml.org/lkml/2016/3/9/978 --- drivers/net/ethernet/hisilicon/hns/hns_ae_adapt.c | 2 +- drivers/net/ethernet/hisilicon/hns/hns_dsaf_ppe.c | 2 +- drivers/net/ethernet/hisilicon/hns/hns_ethtool.c | 12 ++++-------- 3 files changed, 6 insertions(+), 10 deletions(-)