From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============7545075199545790067==" MIME-Version: 1.0 From: kernel test robot Subject: drivers/gpu/drm/i915/gem/selftests/huge_pages.c:187 fake_get_huge_pages() warn: should '1 << ((__builtin_constant_p((~0))) ?((((~0)) < 2) ?0:63 - __builtin_clzll((~0))):((4 <= 4)) ?__ilog2_u32((~0)):__ilog2_u64((~0)))' be a 64 bit type? Date: Sun, 12 Dec 2021 11:22:48 +0800 Message-ID: <202112121114.UBOG7mjJ-lkp@intel.com> List-Id: To: kbuild@lists.01.org --===============7545075199545790067== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable CC: kbuild-all(a)lists.01.org CC: linux-kernel(a)vger.kernel.org TO: Jakub Jelinek CC: "Peter Zijlstra (Intel)" CC: Andrew Morton CC: Linux Memory Management List tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git = master head: a763d5a5abd65797aec3dd1bf01fe2ccbec32967 commit: 2f78788b55baa3410b1ec91a576286abe1ad4d6a ilog2: improve ilog2 for c= onstant arguments date: 12 months ago :::::: branch date: 3 hours ago :::::: commit date: 12 months ago config: i386-randconfig-m021-20211207 (https://download.01.org/0day-ci/arch= ive/20211212/202112121114.UBOG7mjJ-lkp(a)intel.com/config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot Reported-by: Dan Carpenter New smatch warnings: drivers/gpu/drm/i915/gem/selftests/huge_pages.c:187 fake_get_huge_pages() w= arn: should '1 << ((__builtin_constant_p((~0))) ?((((~0)) < 2) ?0:63 - __bu= iltin_clzll((~0))):((4 <=3D 4)) ?__ilog2_u32((~0)):__ilog2_u64((~0)))' be a= 64 bit type? drivers/gpu/drm/i915/selftests/intel_memory_region.c:324 igt_mock_splintere= d_region() warn: should '1 << ((__builtin_constant_p(size)) ?((size < 2) ?0= :63 - __builtin_clzll(size)):((8 <=3D 4)) ?__ilog2_u32(size):__ilog2_u64(si= ze))' be a 64 bit type? Old smatch warnings: drivers/gpu/drm/i915/gem/i915_gem_object.h:127 __i915_gem_object_lock() err= or: we previously assumed 'ww' could be null (see line 119) drivers/gpu/drm/i915/gem/i915_gem_object.h:127 __i915_gem_object_lock() err= or: we previously assumed 'ww' could be null (see line 119) vim +187 drivers/gpu/drm/i915/gem/selftests/huge_pages.c 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 183 = 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 184 static int fake_get_huge_pages(struct drm_i915_gem_object *ob= j) 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 185 { 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 186 struct drm_i915_private *i915 =3D to_i915(obj->base.dev); 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 @187 const u64 max_len =3D rounddown_pow_of_two(UINT_MAX); 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 188 struct sg_table *st; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 189 struct scatterlist *sg; 84e8978e62fea6 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-09 190 unsigned int sg_page_sizes; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 191 u64 rem; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 192 = 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 193 st =3D kmalloc(sizeof(*st), GFP); 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 194 if (!st) 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 195 return -ENOMEM; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 196 = 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 197 if (sg_alloc_table(st, obj->base.size >> PAGE_SHIFT, GFP)) { 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 198 kfree(st); 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 199 return -ENOMEM; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 200 } 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 201 = 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 202 /* Use optimal page sized chunks to fill in the sg table */ 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 203 rem =3D obj->base.size; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 204 sg =3D st->sgl; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 205 st->nents =3D 0; 84e8978e62fea6 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-09 206 sg_page_sizes =3D 0; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 207 do { 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 208 unsigned int page_size =3D get_largest_page_size(i915, rem); 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 209 unsigned int len =3D min(page_size * div_u64(rem, page_size= ), 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 210 max_len); 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 211 = 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 212 GEM_BUG_ON(!page_size); 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 213 = 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 214 sg->offset =3D 0; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 215 sg->length =3D len; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 216 sg_dma_len(sg) =3D len; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 217 sg_dma_address(sg) =3D page_size; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 218 = 84e8978e62fea6 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-09 219 sg_page_sizes |=3D len; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 220 = 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 221 st->nents++; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 222 = 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 223 rem -=3D len; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 224 if (!rem) { 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 225 sg_mark_end(sg); 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 226 break; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 227 } 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 228 = 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 229 sg =3D sg_next(sg); 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 230 } while (1); 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 231 = c6d22ab61bfdeb drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 8-09-20 232 i915_sg_trim(st); c6d22ab61bfdeb drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 8-09-20 233 = 84e8978e62fea6 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-09 234 __i915_gem_object_set_pages(obj, st, sg_page_sizes); 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 235 = 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 236 return 0; 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 237 } 4049866f091311 drivers/gpu/drm/i915/selftests/huge_pages.c Matthew Auld 201= 7-10-06 238 = :::::: The code at line 187 was first introduced by commit :::::: 4049866f0913110bf7de597c1177de7a1cc459cb drm/i915/selftests: huge pa= ge tests :::::: TO: Matthew Auld :::::: CC: Chris Wilson --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org --===============7545075199545790067==--