From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============6804180899803659308==" MIME-Version: 1.0 From: kernel test robot To: kbuild-all@lists.01.org Subject: Re: [PATCH 05/43] asm: x86: instrument usercopy in get_user() and __put_user_size() Date: Wed, 15 Dec 2021 22:34:25 +0800 Message-ID: <202112152249.3T44bfDH-lkp@intel.com> In-Reply-To: <20211214162050.660953-6-glider@google.com> List-Id: --===============6804180899803659308== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hi Alexander, I love your patch! Perhaps something to improve: [auto build test WARNING on tip/x86/mm] [also build test WARNING on linus/master v5.16-rc5] [cannot apply to tip/x86/core hnaz-mm/master next-20211214] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Alexander-Potapenko/Add-Ke= rnelMemorySanitizer-infrastructure/20211215-003033 base: https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git 35fa745= 286ac44ee26ed100c2bd2553368ad193b config: i386-randconfig-s001-20211214 (https://download.01.org/0day-ci/arch= ive/20211215/202112152249.3T44bfDH-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://github.com/0day-ci/linux/commit/3209eff1f0c7f4de1f9685c46= 92c7ad79e8f225b git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Alexander-Potapenko/Add-KernelMemo= rySanitizer-infrastructure/20211215-003033 git checkout 3209eff1f0c7f4de1f9685c4692c7ad79e8f225b # save the config file to linux build tree mkdir build_dir make W=3D1 C=3D1 CF=3D'-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=3D= build_dir ARCH=3Di386 SHELL=3D/bin/bash drivers/w1/slaves/ If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot sparse warnings: (new ones prefixed by >>) drivers/w1/slaves/w1_ds28e04.c:342:13: sparse: sparse: incorrect type in= argument 1 (different address spaces) @@ expected void const volatile = [noderef] __user *ptr @@ got char *buf @@ drivers/w1/slaves/w1_ds28e04.c:342:13: sparse: expected void const v= olatile [noderef] __user *ptr drivers/w1/slaves/w1_ds28e04.c:342:13: sparse: got char *buf drivers/w1/slaves/w1_ds28e04.c:342:13: sparse: sparse: incorrect type in= assignment (different address spaces) @@ expected void [noderef] __use= r *__ptr_pu @@ got char *buf @@ drivers/w1/slaves/w1_ds28e04.c:342:13: sparse: expected void [nodere= f] __user *__ptr_pu drivers/w1/slaves/w1_ds28e04.c:342:13: sparse: got char *buf drivers/w1/slaves/w1_ds28e04.c:356:13: sparse: sparse: incorrect type in= argument 1 (different address spaces) @@ expected void const volatile = [noderef] __user *ptr @@ got char const *buf @@ drivers/w1/slaves/w1_ds28e04.c:356:13: sparse: expected void const v= olatile [noderef] __user *ptr drivers/w1/slaves/w1_ds28e04.c:356:13: sparse: got char const *buf >> drivers/w1/slaves/w1_ds28e04.c:356:13: sparse: sparse: incorrect type in= argument 2 (different address spaces) @@ expected void const [noderef]= __user *from @@ got char const *buf @@ drivers/w1/slaves/w1_ds28e04.c:356:13: sparse: expected void const [= noderef] __user *from drivers/w1/slaves/w1_ds28e04.c:356:13: sparse: got char const *buf >> drivers/w1/slaves/w1_ds28e04.c:356:13: sparse: sparse: incorrect type in= argument 2 (different address spaces) @@ expected void const [noderef]= __user *from @@ got char const *buf @@ drivers/w1/slaves/w1_ds28e04.c:356:13: sparse: expected void const [= noderef] __user *from drivers/w1/slaves/w1_ds28e04.c:356:13: sparse: got char const *buf vim +356 drivers/w1/slaves/w1_ds28e04.c fbf7f7b4e2ae40 Markus Franke 2012-05-26 347 = fa33a65a9cf7e2 Greg Kroah-Hartman 2013-08-21 348 static ssize_t crccheck_= store(struct device *dev, struct device_attribute *attr, fbf7f7b4e2ae40 Markus Franke 2012-05-26 349 const char *buf= , size_t count) fbf7f7b4e2ae40 Markus Franke 2012-05-26 350 { fbf7f7b4e2ae40 Markus Franke 2012-05-26 351 char val; fbf7f7b4e2ae40 Markus Franke 2012-05-26 352 = fbf7f7b4e2ae40 Markus Franke 2012-05-26 353 if (count !=3D 1 || !bu= f) fbf7f7b4e2ae40 Markus Franke 2012-05-26 354 return -EINVAL; fbf7f7b4e2ae40 Markus Franke 2012-05-26 355 = fbf7f7b4e2ae40 Markus Franke 2012-05-26 @356 if (get_user(val, buf)) fbf7f7b4e2ae40 Markus Franke 2012-05-26 357 return -EFAULT; fbf7f7b4e2ae40 Markus Franke 2012-05-26 358 = fbf7f7b4e2ae40 Markus Franke 2012-05-26 359 /* convert to decimal */ fbf7f7b4e2ae40 Markus Franke 2012-05-26 360 val =3D val - 0x30; fbf7f7b4e2ae40 Markus Franke 2012-05-26 361 if (val !=3D 0 && val != =3D 1) fbf7f7b4e2ae40 Markus Franke 2012-05-26 362 return -EINVAL; fbf7f7b4e2ae40 Markus Franke 2012-05-26 363 = fbf7f7b4e2ae40 Markus Franke 2012-05-26 364 /* set the new value */ fbf7f7b4e2ae40 Markus Franke 2012-05-26 365 w1_enable_crccheck =3D = val; fbf7f7b4e2ae40 Markus Franke 2012-05-26 366 = fbf7f7b4e2ae40 Markus Franke 2012-05-26 367 return sizeof(w1_enable= _crccheck); fbf7f7b4e2ae40 Markus Franke 2012-05-26 368 } fbf7f7b4e2ae40 Markus Franke 2012-05-26 369 = --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org --===============6804180899803659308==--