[<prev] [next>] [day] [month] [year] [list]
Message-ID: <201905270544.RtjCZcVV%lkp@intel.com>
Date: Mon, 27 May 2019 05:01:47 +0800
From: kbuild test robot <lkp@...el.com>
To: Jian Shen <shenjian15@...wei.com>
Cc: kbuild-all@...org, netdev@...r.kernel.org,
Huazhong Tan <tanhuazhong@...wei.com>
Subject: [net-next:master 120/123]
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c:5755:1: warning: no
return statement in function returning non-void
tree: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git master
head: ddf6ddb057f22445837df4d01bd966995d4426f7
commit: d93ed94fbeaf3bf5ed16b57574dbb48ab7f7e41a [120/123] net: hns3: add aRFS support for PF
config: xtensa-allyesconfig (attached as .config)
compiler: xtensa-linux-gcc (GCC) 7.4.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout d93ed94fbeaf3bf5ed16b57574dbb48ab7f7e41a
# save the attached .config to linux build tree
GCC_VERSION=7.4.0 make.cross ARCH=xtensa
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@...el.com>
All warnings (new ones prefixed by >>):
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c: In function 'hclge_add_fd_entry_by_arfs':
>> drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c:5755:1: warning: no return statement in function returning non-void [-Wreturn-type]
}
^
At top level:
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c:5651:13: warning: 'hclge_fd_build_arfs_rule' defined but not used [-Wunused-function]
static void hclge_fd_build_arfs_rule(const struct hclge_fd_rule_tuples *tuples,
^~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c:5637:1: warning: 'hclge_fd_search_flow_keys' defined but not used [-Wunused-function]
hclge_fd_search_flow_keys(struct hclge_dev *hdev,
^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c:5615:13: warning: 'hclge_fd_get_flow_tuples' defined but not used [-Wunused-function]
static void hclge_fd_get_flow_tuples(const struct flow_keys *fkeys,
^~~~~~~~~~~~~~~~~~~~~~~~
vim +5755 drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_main.c
5674
5675 static int hclge_add_fd_entry_by_arfs(struct hnae3_handle *handle, u16 queue_id,
5676 u16 flow_id, struct flow_keys *fkeys)
5677 {
5678 #ifdef CONFIG_RFS_ACCEL
5679 struct hclge_vport *vport = hclge_get_vport(handle);
5680 struct hclge_fd_rule_tuples new_tuples;
5681 struct hclge_dev *hdev = vport->back;
5682 struct hclge_fd_rule *rule;
5683 u16 tmp_queue_id;
5684 u16 bit_id;
5685 int ret;
5686
5687 if (!hnae3_dev_fd_supported(hdev))
5688 return -EOPNOTSUPP;
5689
5690 memset(&new_tuples, 0, sizeof(new_tuples));
5691 hclge_fd_get_flow_tuples(fkeys, &new_tuples);
5692
5693 spin_lock_bh(&hdev->fd_rule_lock);
5694
5695 /* when there is already fd rule existed add by user,
5696 * arfs should not work
5697 */
5698 if (hdev->fd_active_type == HCLGE_FD_EP_ACTIVE) {
5699 spin_unlock_bh(&hdev->fd_rule_lock);
5700
5701 return -EOPNOTSUPP;
5702 }
5703
5704 /* check is there flow director filter existed for this flow,
5705 * if not, create a new filter for it;
5706 * if filter exist with different queue id, modify the filter;
5707 * if filter exist with same queue id, do nothing
5708 */
5709 rule = hclge_fd_search_flow_keys(hdev, &new_tuples);
5710 if (!rule) {
5711 bit_id = find_first_zero_bit(hdev->fd_bmap, MAX_FD_FILTER_NUM);
5712 if (bit_id >= hdev->fd_cfg.rule_num[HCLGE_FD_STAGE_1]) {
5713 spin_unlock_bh(&hdev->fd_rule_lock);
5714
5715 return -ENOSPC;
5716 }
5717
5718 rule = kzalloc(sizeof(*rule), GFP_KERNEL);
5719 if (!rule) {
5720 spin_unlock_bh(&hdev->fd_rule_lock);
5721
5722 return -ENOMEM;
5723 }
5724
5725 set_bit(bit_id, hdev->fd_bmap);
5726 rule->location = bit_id;
5727 rule->flow_id = flow_id;
5728 rule->queue_id = queue_id;
5729 hclge_fd_build_arfs_rule(&new_tuples, rule);
5730 ret = hclge_fd_config_rule(hdev, rule);
5731
5732 spin_unlock_bh(&hdev->fd_rule_lock);
5733
5734 if (ret)
5735 return ret;
5736
5737 return rule->location;
5738 }
5739
5740 spin_unlock_bh(&hdev->fd_rule_lock);
5741
5742 if (rule->queue_id == queue_id)
5743 return rule->location;
5744
5745 tmp_queue_id = rule->queue_id;
5746 rule->queue_id = queue_id;
5747 ret = hclge_config_action(hdev, HCLGE_FD_STAGE_1, rule);
5748 if (ret) {
5749 rule->queue_id = tmp_queue_id;
5750 return ret;
5751 }
5752
5753 return rule->location;
5754 #endif
> 5755 }
5756
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
Download attachment ".config.gz" of type "application/gzip" (58645 bytes)
Powered by blists - more mailing lists