reported On 6/25/20 5:50 AM, kernel test robot wrote: > CC: kbuild-all(a)lists.01.org > In-Reply-To: <20200624171749.11927-6-tom@herbertland.com> > References: <20200624171749.11927-6-tom@herbertland.com> > TO: Tom Herbert > > Hi Tom, > > [FYI, it's a private test report for your RFC patch.] > [auto build test WARNING on net/master] > [also build test WARNING on ipvs/master net-next/master linus/master v5.8-rc2 next-20200624] > [cannot apply to cgroup/for-next] > [If your patch is applied to the wrong git tree, kindly drop us a note. > And when submitting patch, we suggest to use as documented in > https://git-scm.com/docs/git-format-patch] > > url: https://github.com/0day-ci/linux/commits/Tom-Herbert/ptq-Per-Thread-Queues/20200625-012135 > base: https://git.kernel.org/pub/scm/linux/kernel/git/davem/net.git 0275875530f692c725c6f993aced2eca2d6ac50c > :::::: branch date: 4 hours ago > :::::: commit date: 4 hours ago > config: s390-randconfig-s031-20200624 (attached as .config) > compiler: s390-linux-gcc (GCC) 9.3.0 > reproduce: > # apt-get install sparse > # sparse version: v0.6.2-dirty > # save the attached .config to linux build tree > make W=1 C=1 ARCH=s390 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' > > If you fix the issue, kindly add following tag as appropriate > Reported-by: kernel test robot > > > sparse warnings: (new ones prefixed by >>) > > net/core/dev.c:3264:23: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted __wsum [usertype] csum @@ got unsigned int @@ > net/core/dev.c:3264:23: sparse: expected restricted __wsum [usertype] csum > net/core/dev.c:3264:23: sparse: got unsigned int > net/core/dev.c:3264:23: sparse: sparse: cast from restricted __wsum > net/core/dev.c:3264:23: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted __wsum [usertype] csum @@ got unsigned int @@ > net/core/dev.c:3264:23: sparse: expected restricted __wsum [usertype] csum > net/core/dev.c:3264:23: sparse: got unsigned int > net/core/dev.c:3264:23: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __wsum @@ > net/core/dev.c:3264:23: sparse: expected unsigned int [usertype] val > net/core/dev.c:3264:23: sparse: got restricted __wsum > net/core/dev.c:3264:23: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted __wsum [usertype] csum @@ got unsigned int @@ > net/core/dev.c:3264:23: sparse: expected restricted __wsum [usertype] csum > net/core/dev.c:3264:23: sparse: got unsigned int > net/core/dev.c:3264:23: sparse: sparse: cast from restricted __wsum > net/core/dev.c:3264:23: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted __wsum [usertype] csum @@ got unsigned int @@ > net/core/dev.c:3264:23: sparse: expected restricted __wsum [usertype] csum > net/core/dev.c:3264:23: sparse: got unsigned int > net/core/dev.c:3264:23: sparse: sparse: cast from restricted __wsum > net/core/dev.c:3264:23: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted __wsum [usertype] csum @@ got unsigned int @@ > net/core/dev.c:3264:23: sparse: expected restricted __wsum [usertype] csum > net/core/dev.c:3264:23: sparse: got unsigned int > net/core/dev.c:3264:23: sparse: sparse: cast from restricted __wsum > net/core/dev.c:3264:23: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted __wsum [usertype] csum @@ got unsigned int @@ > net/core/dev.c:3264:23: sparse: expected restricted __wsum [usertype] csum > net/core/dev.c:3264:23: sparse: got unsigned int > net/core/dev.c:3264:23: sparse: sparse: cast from restricted __wsum >>> net/core/dev.c:4451:27: sparse: sparse: cast to non-scalar >>> net/core/dev.c:4451:27: sparse: sparse: cast from non-scalar > net/core/dev.c:5614:1: sparse: sparse: symbol '__pcpu_scope_flush_works' was not declared. Should it be static? > net/core/dev.c:3747:26: sparse: sparse: context imbalance in '__dev_queue_xmit' - different lock contexts for basic block > net/core/dev.c:4922:44: sparse: sparse: context imbalance in 'net_tx_action' - unexpected unlock > > # https://github.com/0day-ci/linux/commit/8cf630e2a48d7b6e18be2f46f90cebf8ec5d506c > git remote add linux-review https://github.com/0day-ci/linux > git remote update linux-review > git checkout 8cf630e2a48d7b6e18be2f46f90cebf8ec5d506c > vim +4451 net/core/dev.c > > c445477d74ab37 Ben Hutchings 2011-01-19 4426 > c445477d74ab37 Ben Hutchings 2011-01-19 4427 /** > c445477d74ab37 Ben Hutchings 2011-01-19 4428 * rps_may_expire_flow - check whether an RFS hardware filter may be removed > c445477d74ab37 Ben Hutchings 2011-01-19 4429 * @dev: Device on which the filter was set > c445477d74ab37 Ben Hutchings 2011-01-19 4430 * @rxq_index: RX queue index > c445477d74ab37 Ben Hutchings 2011-01-19 4431 * @flow_id: Flow ID passed to ndo_rx_flow_steer() > c445477d74ab37 Ben Hutchings 2011-01-19 4432 * @filter_id: Filter ID returned by ndo_rx_flow_steer() > c445477d74ab37 Ben Hutchings 2011-01-19 4433 * > c445477d74ab37 Ben Hutchings 2011-01-19 4434 * Drivers that implement ndo_rx_flow_steer() should periodically call > c445477d74ab37 Ben Hutchings 2011-01-19 4435 * this function for each installed filter and remove the filters for > c445477d74ab37 Ben Hutchings 2011-01-19 4436 * which it returns %true. > c445477d74ab37 Ben Hutchings 2011-01-19 4437 */ > c445477d74ab37 Ben Hutchings 2011-01-19 4438 bool rps_may_expire_flow(struct net_device *dev, u16 rxq_index, > c445477d74ab37 Ben Hutchings 2011-01-19 4439 u32 flow_id, u16 filter_id) > c445477d74ab37 Ben Hutchings 2011-01-19 4440 { > c445477d74ab37 Ben Hutchings 2011-01-19 4441 struct netdev_rx_queue *rxqueue = dev->_rx + rxq_index; > c445477d74ab37 Ben Hutchings 2011-01-19 4442 struct rps_dev_flow_table *flow_table; > 8cf630e2a48d7b Tom Herbert 2020-06-24 4443 struct rps_cpu_qid cpu_qid; > c445477d74ab37 Ben Hutchings 2011-01-19 4444 struct rps_dev_flow *rflow; > c445477d74ab37 Ben Hutchings 2011-01-19 4445 bool expire = true; > c445477d74ab37 Ben Hutchings 2011-01-19 4446 > c445477d74ab37 Ben Hutchings 2011-01-19 4447 rcu_read_lock(); > c445477d74ab37 Ben Hutchings 2011-01-19 4448 flow_table = rcu_dereference(rxqueue->rps_flow_table); > c445477d74ab37 Ben Hutchings 2011-01-19 4449 if (flow_table && flow_id <= flow_table->mask) { > c445477d74ab37 Ben Hutchings 2011-01-19 4450 rflow = &flow_table->flows[flow_id]; > 8cf630e2a48d7b Tom Herbert 2020-06-24 @4451 cpu_qid = READ_ONCE(rflow->cpu_qid); > 8cf630e2a48d7b Tom Herbert 2020-06-24 4452 if (rflow->filter == filter_id && !cpu_qid.use_qid && > 8cf630e2a48d7b Tom Herbert 2020-06-24 4453 cpu_qid.cpu < nr_cpu_ids && > 8cf630e2a48d7b Tom Herbert 2020-06-24 4454 ((int)(per_cpu(softnet_data, cpu_qid.cpu).input_queue_head - > c445477d74ab37 Ben Hutchings 2011-01-19 4455 rflow->last_qtail) < > c445477d74ab37 Ben Hutchings 2011-01-19 4456 (int)(10 * flow_table->mask))) > c445477d74ab37 Ben Hutchings 2011-01-19 4457 expire = false; > c445477d74ab37 Ben Hutchings 2011-01-19 4458 } > c445477d74ab37 Ben Hutchings 2011-01-19 4459 rcu_read_unlock(); > c445477d74ab37 Ben Hutchings 2011-01-19 4460 return expire; > c445477d74ab37 Ben Hutchings 2011-01-19 4461 } > c445477d74ab37 Ben Hutchings 2011-01-19 4462 EXPORT_SYMBOL(rps_may_expire_flow); > c445477d74ab37 Ben Hutchings 2011-01-19 4463 > > --- > 0-DAY CI Kernel Test Service, Intel Corporation > https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org > > _______________________________________________ > kbuild mailing list -- kbuild(a)lists.01.org > To unsubscribe send an email to kbuild-leave(a)lists.01.org