From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 236B6C433EF for ; Sun, 28 Nov 2021 09:48:35 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1357062AbhK1Jvh (ORCPT ); Sun, 28 Nov 2021 04:51:37 -0500 Received: from mga02.intel.com ([134.134.136.20]:48792 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S243822AbhK1Jtg (ORCPT ); Sun, 28 Nov 2021 04:49:36 -0500 X-IronPort-AV: E=McAfee;i="6200,9189,10181"; a="223049536" X-IronPort-AV: E=Sophos;i="5.87,270,1631602800"; d="scan'208";a="223049536" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 28 Nov 2021 01:46:20 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,270,1631602800"; d="scan'208";a="511271267" Received: from lkp-server02.sh.intel.com (HELO 9e1e9f9b3bcb) ([10.239.97.151]) by orsmga008.jf.intel.com with ESMTP; 28 Nov 2021 01:46:19 -0800 Received: from kbuild by 9e1e9f9b3bcb with local (Exim 4.92) (envelope-from ) id 1mrGlG-000AY7-NU; Sun, 28 Nov 2021 09:46:18 +0000 Date: Sun, 28 Nov 2021 17:45:40 +0800 From: kernel test robot To: Luo bin Cc: kbuild-all@lists.01.org, linux-kernel@vger.kernel.org Subject: drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse: cast to restricted __be64 Message-ID: <202111281707.Z1jcCuXf-lkp@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.10.1 (2018-07-13) Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 3498e7f2bb415e447354a3debef6738d9655768c commit: a425b6e1c69ba907b72b737a4d44f8cfbc43ce3c hinic: add mailbox function support date: 1 year, 7 months ago config: x86_64-randconfig-s022-20211124 (https://download.01.org/0day-ci/archive/20211128/202111281707.Z1jcCuXf-lkp@intel.com/config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 reproduce: # apt-get install sparse # sparse version: v0.6.4-dirty # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a425b6e1c69ba907b72b737a4d44f8cfbc43ce3c git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git git fetch --no-tags linus master git checkout a425b6e1c69ba907b72b737a4d44f8cfbc43ce3c # save the config file to linux build tree make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot sparse warnings: (new ones prefixed by >>) drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:543:54: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] *addr @@ got unsigned char [usertype] * @@ drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:543:54: sparse: expected void volatile [noderef] *addr drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:543:54: sparse: got unsigned char [usertype] * drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:566:58: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] *addr @@ got unsigned char [usertype] * @@ drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:566:58: sparse: expected void volatile [noderef] *addr drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:566:58: sparse: got unsigned char [usertype] * drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:601:6: sparse: sparse: symbol 'dump_mox_reg' was not declared. Should it be static? >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse: cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse: cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse: cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse: cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse: cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse: cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse: cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse: cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse: cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse: cast to restricted __be64 drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:1057:25: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char [usertype] *data @@ got void [noderef] * @@ drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:1057:25: sparse: expected unsigned char [usertype] *data drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:1057:25: sparse: got void [noderef] * drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c: note: in included file: drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int val @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: expected unsigned int val drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: got restricted __be32 [usertype] drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int val @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: expected unsigned int val drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: got restricted __be32 [usertype] drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int val @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: expected unsigned int val drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: got restricted __be32 [usertype] drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int val @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: expected unsigned int val drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: got restricted __be32 [usertype] drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int val @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: expected unsigned int val drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: got restricted __be32 [usertype] drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int val @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: expected unsigned int val drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: got restricted __be32 [usertype] vim +618 drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c 614 615 static u16 get_mbox_status(struct hinic_send_mbox *mbox) 616 { 617 /* write back is 16B, but only use first 4B */ > 618 u64 wb_val = be64_to_cpu(*mbox->wb_status); 619 620 rmb(); /* verify reading before check */ 621 622 return (u16)(wb_val & MBOX_WB_STATUS_ERRCODE_MASK); 623 } 624 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============5439587428893257194==" MIME-Version: 1.0 From: kernel test robot To: kbuild-all@lists.01.org Subject: drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse: cast to restricted __be64 Date: Sun, 28 Nov 2021 17:45:40 +0800 Message-ID: <202111281707.Z1jcCuXf-lkp@intel.com> List-Id: --===============5439587428893257194== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git = master head: 3498e7f2bb415e447354a3debef6738d9655768c commit: a425b6e1c69ba907b72b737a4d44f8cfbc43ce3c hinic: add mailbox functio= n support date: 1 year, 7 months ago config: x86_64-randconfig-s022-20211124 (https://download.01.org/0day-ci/ar= chive/20211128/202111281707.Z1jcCuXf-lkp(a)intel.com/config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 reproduce: # apt-get install sparse # sparse version: v0.6.4-dirty # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.gi= t/commit/?id=3Da425b6e1c69ba907b72b737a4d44f8cfbc43ce3c git remote add linus https://git.kernel.org/pub/scm/linux/kernel/gi= t/torvalds/linux.git git fetch --no-tags linus master git checkout a425b6e1c69ba907b72b737a4d44f8cfbc43ce3c # save the config file to linux build tree make W=3D1 C=3D1 CF=3D'-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=3D= build_dir ARCH=3Dx86_64 SHELL=3D/bin/bash If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot sparse warnings: (new ones prefixed by >>) drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:543:54: sparse: sparse= : incorrect type in argument 2 (different address spaces) @@ expected v= oid volatile [noderef] *addr @@ got unsigned char [usertype] * = @@ drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:543:54: sparse: ex= pected void volatile [noderef] *addr drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:543:54: sparse: go= t unsigned char [usertype] * drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:566:58: sparse: sparse= : incorrect type in argument 2 (different address spaces) @@ expected v= oid volatile [noderef] *addr @@ got unsigned char [usertype] * = @@ drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:566:58: sparse: ex= pected void volatile [noderef] *addr drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:566:58: sparse: go= t unsigned char [usertype] * drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:601:6: sparse: sparse:= symbol 'dump_mox_reg' was not declared. Should it be static? >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse= : cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse= : cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse= : cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse= : cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse= : cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse= : cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse= : cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse= : cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse= : cast to restricted __be64 >> drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:618:22: sparse: sparse= : cast to restricted __be64 drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:1057:25: sparse: spars= e: incorrect type in assignment (different address spaces) @@ expected = unsigned char [usertype] *data @@ got void [noderef] * @@ drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:1057:25: sparse: e= xpected unsigned char [usertype] *data drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c:1057:25: sparse: g= ot void [noderef] * drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c: note: in included fil= e: drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: sparse: = incorrect type in argument 1 (different base types) @@ expected unsigne= d int val @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: expe= cted unsigned int val drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: got = restricted __be32 [usertype] drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: sparse: = incorrect type in argument 1 (different base types) @@ expected unsigne= d int val @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: expe= cted unsigned int val drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: got = restricted __be32 [usertype] drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: = cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: = cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: = cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: = cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: = cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: = cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: = cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: = cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: = cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: = cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: = cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:250:16: sparse: sparse: = cast to restricted __be32 drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: sparse: = incorrect type in argument 1 (different base types) @@ expected unsigne= d int val @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: expe= cted unsigned int val drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: got = restricted __be32 [usertype] drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: sparse: = incorrect type in argument 1 (different base types) @@ expected unsigne= d int val @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: expe= cted unsigned int val drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: got = restricted __be32 [usertype] drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: sparse: = incorrect type in argument 1 (different base types) @@ expected unsigne= d int val @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: expe= cted unsigned int val drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: got = restricted __be32 [usertype] drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: sparse: = incorrect type in argument 1 (different base types) @@ expected unsigne= d int val @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: expe= cted unsigned int val drivers/net/ethernet/huawei/hinic/hinic_hw_if.h:256:16: sparse: got = restricted __be32 [usertype] vim +618 drivers/net/ethernet/huawei/hinic/hinic_hw_mbox.c 614 = 615 static u16 get_mbox_status(struct hinic_send_mbox *mbox) 616 { 617 /* write back is 16B, but only use first 4B */ > 618 u64 wb_val =3D be64_to_cpu(*mbox->wb_status); 619 = 620 rmb(); /* verify reading before check */ 621 = 622 return (u16)(wb_val & MBOX_WB_STATUS_ERRCODE_MASK); 623 } 624 = --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org --===============5439587428893257194==--