From: kernel test robot <lkp@intel.com>
To: kbuild@lists.01.org
Subject: drivers/infiniband/hw/hns/hns_roce_hw_v2.c:309:9: sparse: sparse: dubious: x & !y
Date: Sun, 11 Sep 2022 07:39:28 +0800 [thread overview]
Message-ID: <202209110736.QVAF6lYe-lkp@intel.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 11487 bytes --]
::::::
:::::: Manual check reason: "low confidence static check first_new_problem: drivers/infiniband/hw/hns/hns_roce_hw_v2.c:309:9: sparse: sparse: dubious: x & !y"
::::::
BCC: lkp(a)intel.com
CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: Huacai Chen <chenhuacai@loongson.cn>
CC: WANG Xuerui <git@xen0n.name>
CC: Jianmin Lv <lvjianmin@loongson.cn>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: b96fbd602d35739b5cdb49baa02048f2c41fdab1
commit: 57fc7323a8e7c2e7c1d5795ab63cb3ffea3cfdfb LoongArch: Add PCI controller support
date: 4 weeks ago
:::::: branch date: 6 hours ago
:::::: commit date: 4 weeks ago
config: loongarch-randconfig-s031-20220911 (https://download.01.org/0day-ci/archive/20220911/202209110736.QVAF6lYe-lkp(a)intel.com/config)
compiler: loongarch64-linux-gcc (GCC) 12.1.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.4-39-gce1a6720-dirty
# https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=57fc7323a8e7c2e7c1d5795ab63cb3ffea3cfdfb
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 57fc7323a8e7c2e7c1d5795ab63cb3ffea3cfdfb
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=loongarch SHELL=/bin/bash drivers/infiniband/hw/hns/ drivers/isdn/hardware/mISDN/
If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>
sparse warnings: (new ones prefixed by >>)
>> drivers/infiniband/hw/hns/hns_roce_hw_v2.c:309:9: sparse: sparse: dubious: x & !y
drivers/infiniband/hw/hns/hns_roce_hw_v2.c: note: in included file (through arch/loongarch/include/asm/io.h, arch/loongarch/include/asm/pgtable.h, arch/loongarch/include/asm/uaccess.h, ...):
include/asm-generic/io.h:307:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned long long [usertype] value @@ got restricted __le64 [usertype] @@
include/asm-generic/io.h:307:22: sparse: expected unsigned long long [usertype] value
include/asm-generic/io.h:307:22: sparse: got restricted __le64 [usertype]
drivers/infiniband/hw/hns/hns_roce_hw_v2.c:460:9: sparse: sparse: dubious: x & !y
drivers/infiniband/hw/hns/hns_roce_hw_v2.c:462:9: sparse: sparse: dubious: x & !y
include/asm-generic/io.h:236:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned long long [usertype] value @@ got restricted __le64 [usertype] @@
include/asm-generic/io.h:236:22: sparse: expected unsigned long long [usertype] value
include/asm-generic/io.h:236:22: sparse: got restricted __le64 [usertype]
include/asm-generic/io.h:236:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned long long [usertype] value @@ got restricted __le64 [usertype] @@
include/asm-generic/io.h:236:22: sparse: expected unsigned long long [usertype] value
include/asm-generic/io.h:236:22: sparse: got restricted __le64 [usertype]
include/asm-generic/io.h:236:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned long long [usertype] value @@ got restricted __le64 [usertype] @@
include/asm-generic/io.h:236:22: sparse: expected unsigned long long [usertype] value
include/asm-generic/io.h:236:22: sparse: got restricted __le64 [usertype]
include/asm-generic/io.h:236:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned long long [usertype] value @@ got restricted __le64 [usertype] @@
include/asm-generic/io.h:236:22: sparse: expected unsigned long long [usertype] value
include/asm-generic/io.h:236:22: sparse: got restricted __le64 [usertype]
include/asm-generic/io.h:236:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned long long [usertype] value @@ got restricted __le64 [usertype] @@
include/asm-generic/io.h:236:22: sparse: expected unsigned long long [usertype] value
include/asm-generic/io.h:236:22: sparse: got restricted __le64 [usertype]
include/asm-generic/io.h:236:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned long long [usertype] value @@ got restricted __le64 [usertype] @@
include/asm-generic/io.h:236:22: sparse: expected unsigned long long [usertype] value
include/asm-generic/io.h:236:22: sparse: got restricted __le64 [usertype]
include/asm-generic/io.h:236:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned long long [usertype] value @@ got restricted __le64 [usertype] @@
include/asm-generic/io.h:236:22: sparse: expected unsigned long long [usertype] value
include/asm-generic/io.h:236:22: sparse: got restricted __le64 [usertype]
--
drivers/isdn/hardware/mISDN/hfcmulti.c:452:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
drivers/isdn/hardware/mISDN/hfcmulti.c:452:22: sparse: expected unsigned int [usertype] value
drivers/isdn/hardware/mISDN/hfcmulti.c:452:22: sparse: got restricted __le32 [usertype]
drivers/isdn/hardware/mISDN/hfcmulti.c:457:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short [usertype] value @@ got restricted __le16 [usertype] @@
drivers/isdn/hardware/mISDN/hfcmulti.c:457:22: sparse: expected unsigned short [usertype] value
drivers/isdn/hardware/mISDN/hfcmulti.c:457:22: sparse: got restricted __le16 [usertype]
drivers/isdn/hardware/mISDN/hfcmulti.c:472:24: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __le32 [usertype] @@
drivers/isdn/hardware/mISDN/hfcmulti.c:472:24: sparse: expected unsigned int [usertype] value
drivers/isdn/hardware/mISDN/hfcmulti.c:472:24: sparse: got restricted __le32 [usertype]
drivers/isdn/hardware/mISDN/hfcmulti.c:478:24: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short [usertype] value @@ got restricted __le16 [usertype] @@
drivers/isdn/hardware/mISDN/hfcmulti.c:478:24: sparse: expected unsigned short [usertype] value
drivers/isdn/hardware/mISDN/hfcmulti.c:478:24: sparse: got restricted __le16 [usertype]
drivers/isdn/hardware/mISDN/hfcmulti.c:496:32: sparse: sparse: cast to restricted __le32
drivers/isdn/hardware/mISDN/hfcmulti.c:501:32: sparse: sparse: cast to restricted __le16
drivers/isdn/hardware/mISDN/hfcmulti.c:518:25: sparse: sparse: cast to restricted __le32
drivers/isdn/hardware/mISDN/hfcmulti.c:524:25: sparse: sparse: cast to restricted __le16
>> drivers/isdn/hardware/mISDN/hfcmulti.c:1092:26: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got void * @@
drivers/isdn/hardware/mISDN/hfcmulti.c:1092:26: sparse: expected void const volatile [noderef] __iomem *addr
drivers/isdn/hardware/mISDN/hfcmulti.c:1092:26: sparse: got void *
vim +309 drivers/infiniband/hw/hns/hns_roce_hw_v2.c
30b707886aeb89 Weihang Li 2020-09-10 294
30b707886aeb89 Weihang Li 2020-09-10 295 static int set_rwqe_data_seg(struct ib_qp *ibqp, const struct ib_send_wr *wr,
30b707886aeb89 Weihang Li 2020-09-10 296 struct hns_roce_v2_rc_send_wqe *rc_sq_wqe,
30b707886aeb89 Weihang Li 2020-09-10 297 unsigned int *sge_ind,
30b707886aeb89 Weihang Li 2020-09-10 298 unsigned int valid_num_sge)
30b707886aeb89 Weihang Li 2020-09-10 299 {
30b707886aeb89 Weihang Li 2020-09-10 300 struct hns_roce_v2_wqe_data_seg *dseg =
30b707886aeb89 Weihang Li 2020-09-10 301 (void *)rc_sq_wqe + sizeof(struct hns_roce_v2_rc_send_wqe);
30b707886aeb89 Weihang Li 2020-09-10 302 struct hns_roce_qp *qp = to_hr_qp(ibqp);
30b707886aeb89 Weihang Li 2020-09-10 303 int j = 0;
30b707886aeb89 Weihang Li 2020-09-10 304 int i;
30b707886aeb89 Weihang Li 2020-09-10 305
82600b2d3cd574 Wenpeng Liang 2022-05-12 306 hr_reg_write(rc_sq_wqe, RC_SEND_WQE_MSG_START_SGE_IDX,
30b707886aeb89 Weihang Li 2020-09-10 307 (*sge_ind) & (qp->sge.sge_cnt - 1));
30b707886aeb89 Weihang Li 2020-09-10 308
82600b2d3cd574 Wenpeng Liang 2022-05-12 @309 hr_reg_write(rc_sq_wqe, RC_SEND_WQE_INLINE,
e13026578b727b Lang Cheng 2021-06-18 310 !!(wr->send_flags & IB_SEND_INLINE));
30b707886aeb89 Weihang Li 2020-09-10 311 if (wr->send_flags & IB_SEND_INLINE)
30b707886aeb89 Weihang Li 2020-09-10 312 return set_rc_inl(qp, wr, rc_sq_wqe, sge_ind);
30b707886aeb89 Weihang Li 2020-09-10 313
54d6638765b0ed Xi Wang 2020-04-28 314 if (valid_num_sge <= HNS_ROCE_SGE_IN_WQE) {
7bdee4158b3778 oulijun 2018-01-10 315 for (i = 0; i < wr->num_sge; i++) {
7bdee4158b3778 oulijun 2018-01-10 316 if (likely(wr->sg_list[i].length)) {
7bdee4158b3778 oulijun 2018-01-10 317 set_data_seg_v2(dseg, wr->sg_list + i);
7bdee4158b3778 oulijun 2018-01-10 318 dseg++;
7bdee4158b3778 oulijun 2018-01-10 319 }
7bdee4158b3778 oulijun 2018-01-10 320 }
7bdee4158b3778 oulijun 2018-01-10 321 } else {
30b707886aeb89 Weihang Li 2020-09-10 322 for (i = 0; i < wr->num_sge && j < HNS_ROCE_SGE_IN_WQE; i++) {
7bdee4158b3778 oulijun 2018-01-10 323 if (likely(wr->sg_list[i].length)) {
7bdee4158b3778 oulijun 2018-01-10 324 set_data_seg_v2(dseg, wr->sg_list + i);
7bdee4158b3778 oulijun 2018-01-10 325 dseg++;
468d020e2f0286 Lijun Ou 2020-01-09 326 j++;
7bdee4158b3778 oulijun 2018-01-10 327 }
7bdee4158b3778 oulijun 2018-01-10 328 }
7bdee4158b3778 oulijun 2018-01-10 329
0fd0175e30e487 Lang Cheng 2020-11-28 330 set_extend_sge(qp, wr->sg_list + i, sge_ind,
0fd0175e30e487 Lang Cheng 2020-11-28 331 valid_num_sge - HNS_ROCE_SGE_IN_WQE);
7bdee4158b3778 oulijun 2018-01-10 332 }
7bdee4158b3778 oulijun 2018-01-10 333
82600b2d3cd574 Wenpeng Liang 2022-05-12 334 hr_reg_write(rc_sq_wqe, RC_SEND_WQE_SGE_NUM, valid_num_sge);
7bdee4158b3778 oulijun 2018-01-10 335
7bdee4158b3778 oulijun 2018-01-10 336 return 0;
7bdee4158b3778 oulijun 2018-01-10 337 }
7bdee4158b3778 oulijun 2018-01-10 338
:::::: The code at line 309 was first introduced by commit
:::::: 82600b2d3cd57428bdb03c66ae67708d3c8f7281 RDMA/hns: Use hr_reg_xxx() instead of remaining roce_set_xxx()
:::::: TO: Wenpeng Liang <liangwenpeng@huawei.com>
:::::: CC: Jason Gunthorpe <jgg@nvidia.com>
--
0-DAY CI Kernel Test Service
https://01.org/lkp
next reply other threads:[~2022-09-10 23:39 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-10 23:39 kernel test robot [this message]
-- strict thread matches above, loose matches on Subject: below --
2022-10-29 4:59 drivers/infiniband/hw/hns/hns_roce_hw_v2.c:309:9: sparse: sparse: dubious: x & !y kernel test robot
2022-11-15 23:07 kernel test robot
2022-11-28 14:16 kernel test robot
2023-02-10 4:47 kernel test robot
2023-04-13 12:21 kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202209110736.QVAF6lYe-lkp@intel.com \
--to=lkp@intel.com \
--cc=kbuild@lists.01.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.