From: kernel test robot <lkp@intel.com>
To: Arunpravin <Arunpravin.PaneerSelvam@amd.com>
Cc: kbuild-all@lists.01.org, linux-kernel@vger.kernel.org,
"Christian König" <christian.koenig@amd.com>,
"Matthew Auld" <matthew.auld@intel.com>
Subject: drivers/gpu/drm/selftests/test-drm_buddy.c:371:7: warning: Local variable 'order' shadows outer variable [shadowVariable]
Date: Sat, 23 Apr 2022 13:48:10 +0800 [thread overview]
Message-ID: <202204231336.z5q1hTRd-lkp@intel.com> (raw)
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: c00c5e1d157bec0ef0b0b59aa5482eb8dc7e8e49
commit: e6ff5ef81170e11dc0f196b0391f708f04fa8c87 drm/selftests: add drm buddy smoke testcase
date: 8 weeks ago
compiler: arc-elf-gcc (GCC) 11.2.0
reproduce (cppcheck warning):
# apt-get install cppcheck
git checkout e6ff5ef81170e11dc0f196b0391f708f04fa8c87
cppcheck --quiet --enable=style,performance,portability --template=gcc FILE
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
cppcheck warnings: (new ones prefixed by >>)
In file included from drivers/gpu/drm/selftests/test-drm_buddy.c:
>> drivers/gpu/drm/selftests/test-drm_buddy.c:371:7: warning: Local variable 'order' shadows outer variable [shadowVariable]
int order;
^
drivers/gpu/drm/selftests/test-drm_buddy.c:346:7: note: Shadowed declaration
int *order;
^
drivers/gpu/drm/selftests/test-drm_buddy.c:371:7: note: Shadow variable
int order;
^
vim +/order +371 drivers/gpu/drm/selftests/test-drm_buddy.c
340
341 static int igt_buddy_alloc_smoke(void *arg)
342 {
343 u64 mm_size, min_page_size, chunk_size, start = 0;
344 unsigned long flags = 0;
345 struct drm_buddy mm;
346 int *order;
347 int err, i;
348
349 DRM_RND_STATE(prng, random_seed);
350 IGT_TIMEOUT(end_time);
351
352 igt_mm_config(&mm_size, &chunk_size);
353
354 err = drm_buddy_init(&mm, mm_size, chunk_size);
355 if (err) {
356 pr_err("buddy_init failed(%d)\n", err);
357 return err;
358 }
359
360 order = drm_random_order(mm.max_order + 1, &prng);
361 if (!order)
362 goto out_fini;
363
364 for (i = 0; i <= mm.max_order; ++i) {
365 struct drm_buddy_block *block;
366 int max_order = order[i];
367 bool timeout = false;
368 LIST_HEAD(blocks);
369 u64 total, size;
370 LIST_HEAD(tmp);
> 371 int order;
372
373 err = igt_check_mm(&mm);
374 if (err) {
375 pr_err("pre-mm check failed, abort\n");
376 break;
377 }
378
379 order = max_order;
380 total = 0;
381
382 do {
383 retry:
384 size = min_page_size = get_size(order, chunk_size);
385 err = drm_buddy_alloc_blocks(&mm, start, mm_size, size,
386 min_page_size, &tmp, flags);
387 if (err) {
388 if (err == -ENOMEM) {
389 pr_info("buddy_alloc hit -ENOMEM with order=%d\n",
390 order);
391 } else {
392 if (order--) {
393 err = 0;
394 goto retry;
395 }
396
397 pr_err("buddy_alloc with order=%d failed(%d)\n",
398 order, err);
399 }
400
401 break;
402 }
403
404 block = list_first_entry_or_null(&tmp,
405 struct drm_buddy_block,
406 link);
407 if (!block) {
408 pr_err("alloc_blocks has no blocks\n");
409 err = -EINVAL;
410 break;
411 }
412
413 list_move_tail(&block->link, &blocks);
414
415 if (drm_buddy_block_order(block) != order) {
416 pr_err("buddy_alloc order mismatch\n");
417 err = -EINVAL;
418 break;
419 }
420
421 total += drm_buddy_block_size(&mm, block);
422
423 if (__igt_timeout(end_time, NULL)) {
424 timeout = true;
425 break;
426 }
427 } while (total < mm.size);
428
429 if (!err)
430 err = igt_check_blocks(&mm, &blocks, total, false);
431
432 drm_buddy_free_list(&mm, &blocks);
433
434 if (!err) {
435 err = igt_check_mm(&mm);
436 if (err)
437 pr_err("post-mm check failed\n");
438 }
439
440 if (err || timeout)
441 break;
442
443 cond_resched();
444 }
445
446 if (err == -ENOMEM)
447 err = 0;
448
449 kfree(order);
450 out_fini:
451 drm_buddy_fini(&mm);
452
453 return err;
454 }
455
--
0-DAY CI Kernel Test Service
https://01.org/lkp
reply other threads:[~2022-04-23 5:48 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=202204231336.z5q1hTRd-lkp@intel.com \
--to=lkp@intel.com \
--cc=Arunpravin.PaneerSelvam@amd.com \
--cc=christian.koenig@amd.com \
--cc=kbuild-all@lists.01.org \
--cc=linux-kernel@vger.kernel.org \
--cc=matthew.auld@intel.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®