From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============1008313835687683245==" MIME-Version: 1.0 From: kernel test robot To: kbuild-all@lists.01.org Subject: drivers/remoteproc/qcom_common.c:126:27: sparse: sparse: restricted __le32 degrades to integer Date: Sat, 04 Dec 2021 10:42:55 +0800 Message-ID: <202112041004.TG67vMs1-lkp@intel.com> List-Id: --===============1008313835687683245== 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: 12119cfa1052d512a92524e90ebee85029a918f8 commit: 8ed8485c4f056d488d17a2b56581c86aeb42955d remoteproc: qcom: Add capa= bility to collect minidumps date: 12 months ago config: arm-allyesconfig (https://download.01.org/0day-ci/archive/20211204/= 202112041004.TG67vMs1-lkp(a)intel.com/config) compiler: arm-linux-gnueabi-gcc (GCC) 11.2.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-dirty # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.gi= t/commit/?id=3D8ed8485c4f056d488d17a2b56581c86aeb42955d 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 8ed8485c4f056d488d17a2b56581c86aeb42955d # save the config file to linux build tree mkdir build_dir COMPILER_INSTALL_PATH=3D$HOME/0day COMPILER=3Dgcc-11.2.0 make.cross= C=3D1 CF=3D'-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=3Dbuild_dir ARCH=3Da= rm SHELL=3D/bin/bash arch/arm/mach-imx/ arch/arm/mach-mvebu/ arch/arm/mach-= rockchip/ arch/arm/mach-socfpga/ arch/arm/mach-tegra/ drivers/dma/ drivers/= edac/ drivers/gpu/drm/msm/ drivers/gpu/drm/tegra/ drivers/interconnect/qcom= / drivers/irqchip/ drivers/mtd/nand/onenand/ drivers/net/ethernet/mediatek/= drivers/net/vmxnet3/ drivers/net/wireless/mediatek/mt76/mt7915/ drivers/re= moteproc/ drivers/scsi/bnx2fc/ drivers/scsi/lpfc/ drivers/soc/bcm/brcmstb/p= m/ drivers/staging/ fs/proc/ net/sched/ If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot sparse warnings: (new ones prefixed by >>) >> drivers/remoteproc/qcom_common.c:126:27: sparse: sparse: restricted __le= 32 degrades to integer >> drivers/remoteproc/qcom_common.c:133:32: sparse: sparse: cast to restric= ted __le32 >> drivers/remoteproc/qcom_common.c:133:32: sparse: sparse: cast from restr= icted __le64 >> drivers/remoteproc/qcom_common.c:133:32: sparse: sparse: cast to restric= ted __le32 >> drivers/remoteproc/qcom_common.c:133:32: sparse: sparse: cast from restr= icted __le64 >> drivers/remoteproc/qcom_common.c:133:32: sparse: sparse: cast to restric= ted __le32 >> drivers/remoteproc/qcom_common.c:133:32: sparse: sparse: cast from restr= icted __le64 >> drivers/remoteproc/qcom_common.c:133:32: sparse: sparse: cast to restric= ted __le32 >> drivers/remoteproc/qcom_common.c:133:32: sparse: sparse: cast from restr= icted __le64 >> drivers/remoteproc/qcom_common.c:133:32: sparse: sparse: cast to restric= ted __le32 >> drivers/remoteproc/qcom_common.c:133:32: sparse: sparse: cast from restr= icted __le64 >> drivers/remoteproc/qcom_common.c:133:32: sparse: sparse: cast to restric= ted __le32 >> drivers/remoteproc/qcom_common.c:133:32: sparse: sparse: cast from restr= icted __le64 vim +126 drivers/remoteproc/qcom_common.c 103 = 104 static int qcom_add_minidump_segments(struct rproc *rproc, struct mi= nidump_subsystem *subsystem) 105 { 106 struct minidump_region __iomem *ptr; 107 struct minidump_region region; 108 int seg_cnt, i; 109 dma_addr_t da; 110 size_t size; 111 char *name; 112 = 113 if (WARN_ON(!list_empty(&rproc->dump_segments))) { 114 dev_err(&rproc->dev, "dump segment list already populated\n"); 115 return -EUCLEAN; 116 } 117 = 118 seg_cnt =3D le32_to_cpu(subsystem->region_count); 119 ptr =3D ioremap((unsigned long)le64_to_cpu(subsystem->regions_basep= tr), 120 seg_cnt * sizeof(struct minidump_region)); 121 if (!ptr) 122 return -EFAULT; 123 = 124 for (i =3D 0; i < seg_cnt; i++) { 125 memcpy_fromio(®ion, ptr + i, sizeof(region)); > 126 if (region.valid =3D=3D MD_REGION_VALID) { 127 name =3D kstrdup(region.name, GFP_KERNEL); 128 if (!name) { 129 iounmap(ptr); 130 return -ENOMEM; 131 } 132 da =3D le64_to_cpu(region.address); > 133 size =3D le32_to_cpu(region.size); 134 rproc_coredump_add_custom_segment(rproc, da, size, NULL, name); 135 } 136 } 137 = 138 iounmap(ptr); 139 return 0; 140 } 141 = --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org --===============1008313835687683245==--