[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202112090601.FrUCO7HV-lkp@intel.com>
Date: Thu, 9 Dec 2021 06:32:11 +0800
From: kernel test robot <lkp@...el.com>
To: xiangxia.m.yue@...il.com, netdev@...r.kernel.org
Cc: llvm@...ts.linux.dev, kbuild-all@...ts.01.org,
Tonghao Zhang <xiangxia.m.yue@...il.com>,
Jamal Hadi Salim <jhs@...atatu.com>,
Cong Wang <xiyou.wangcong@...il.com>,
Jiri Pirko <jiri@...nulli.us>,
Jakub Kicinski <kuba@...nel.org>,
Jonathan Lemon <jonathan.lemon@...il.com>,
Eric Dumazet <edumazet@...gle.com>,
Alexander Lobakin <alobakin@...me>,
Paolo Abeni <pabeni@...hat.com>
Subject: Re: [net-next v2 2/2] net: sched: support hash/classid selecting tx
queue
Hi,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on net-next/master]
url: https://github.com/0day-ci/linux/commits/xiangxia-m-yue-gmail-com/net-sched-allow-user-to-select-txqueue/20211208-223656
base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git 1fe5b01262844be03de98afdd56d1d393df04d7e
config: i386-randconfig-a015-20211207 (https://download.01.org/0day-ci/archive/20211209/202112090601.FrUCO7HV-lkp@intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 097a1cb1d5ebb3a0ec4bcaed8ba3ff6a8e33c00a)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/0day-ci/linux/commit/522fbcfdde012bc46d29aa216bdfa73f512adcbd
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review xiangxia-m-yue-gmail-com/net-sched-allow-user-to-select-txqueue/20211208-223656
git checkout 522fbcfdde012bc46d29aa216bdfa73f512adcbd
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash net/sched/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>
All warnings (new ones prefixed by >>):
>> net/sched/act_skbedit.c:39:11: warning: variable 'hash' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
else if (params->flags & SKBEDIT_F_QUEUE_MAPPING_HASH)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
net/sched/act_skbedit.c:42:34: note: uninitialized use occurs here
queue_mapping = queue_mapping + hash % mapping_mod;
^~~~
net/sched/act_skbedit.c:39:7: note: remove the 'if' if its condition is always true
else if (params->flags & SKBEDIT_F_QUEUE_MAPPING_HASH)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
net/sched/act_skbedit.c:32:10: note: initialize the variable 'hash' to silence this warning
u32 hash;
^
= 0
1 warning generated.
vim +39 net/sched/act_skbedit.c
26
27 static u16 tcf_skbedit_hash(struct tcf_skbedit_params *params,
28 struct sk_buff *skb)
29 {
30 u16 queue_mapping = params->queue_mapping;
31 u16 mapping_mod = params->mapping_mod;
32 u32 hash;
33
34 if (!(params->flags & SKBEDIT_F_QUEUE_MAPPING_HASH_MASK))
35 return netdev_cap_txqueue(skb->dev, queue_mapping);
36
37 if (params->flags & SKBEDIT_F_QUEUE_MAPPING_CLASSID)
38 hash = jhash_1word(task_get_classid(skb), 0);
> 39 else if (params->flags & SKBEDIT_F_QUEUE_MAPPING_HASH)
40 hash = skb_get_hash(skb);
41
42 queue_mapping = queue_mapping + hash % mapping_mod;
43 return netdev_cap_txqueue(skb->dev, queue_mapping);
44 }
45
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Powered by blists - more mailing lists