* Re: [PATCH v3 3/5] drm/i915: support 64K GTT pages for discrete cards
[not found] <20220120203721.632424-4-bob.beckett@collabora.com>
@ 2022-01-21 10:31 ` kernel test robot
2022-01-21 13:55 ` kernel test robot
1 sibling, 0 replies; 2+ messages in thread
From: kernel test robot @ 2022-01-21 10:31 UTC (permalink / raw)
To: Robert Beckett; +Cc: llvm, kbuild-all
Hi Robert,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on drm-tip/drm-tip]
[cannot apply to drm-intel/for-linux-next v5.16 next-20220121]
[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/Robert-Beckett/discrete-card-64K-page-support/20220121-044244
base: git://anongit.freedesktop.org/drm/drm-tip drm-tip
config: i386-randconfig-a005-20220117 (https://download.01.org/0day-ci/archive/20220121/202201211804.7ErZmoIV-lkp@intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project d4baf3b1322b84816aa623d8e8cb45a49cb68b84)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/0day-ci/linux/commit/7547f27d09bac4e34155aca7ed017c04b7531e52
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Robert-Beckett/discrete-card-64K-page-support/20220121-044244
git checkout 7547f27d09bac4e34155aca7ed017c04b7531e52
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/gpu/drm/i915/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
In file included from drivers/gpu/drm/i915/gem/i915_gem_object.c:807:
>> drivers/gpu/drm/i915/gem/selftests/huge_pages.c:1508:10: error: variable 'err' is uninitialized when used here [-Werror,-Wuninitialized]
return err;
^~~
drivers/gpu/drm/i915/gem/selftests/huge_pages.c:1485:9: note: initialize the variable 'err' to silence this warning
int err;
^
= 0
1 error generated.
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for SND_SOC_CS35L41_SPI
Depends on SOUND && !UML && SND && SND_SOC && SPI_MASTER
Selected by
- SND_SOC_AMD_VANGOGH_MACH && SOUND && !UML && SND && SND_SOC && SND_SOC_AMD_ACP5x && I2C
vim +/err +1508 drivers/gpu/drm/i915/gem/selftests/huge_pages.c
1480
1481 static int igt_ppgtt_compact(void *arg)
1482 {
1483 struct drm_i915_private *i915 = arg;
1484 struct drm_i915_gem_object *obj;
1485 int err;
1486
1487 /*
1488 * Simple test to catch issues with compact 64K pages -- since the pt is
1489 * compacted to 256B that gives us 32 entries per pt, however since the
1490 * backing page for the pt is 4K, any extra entries we might incorrectly
1491 * write out should be ignored by the HW. If ever hit such a case this
1492 * test should catch it since some of our writes would land in scratch.
1493 */
1494
1495 if (!HAS_64K_PAGES(i915)) {
1496 pr_info("device lacks compact 64K page support, skipping\n");
1497 return 0;
1498 }
1499
1500 if (!HAS_LMEM(i915)) {
1501 pr_info("device lacks LMEM support, skipping\n");
1502 return 0;
1503 }
1504
1505 /* We want the range to cover multiple page-table boundaries. */
1506 obj = i915_gem_object_create_lmem(i915, SZ_4M, 0);
1507 if (IS_ERR(obj))
> 1508 return err;
1509
1510 err = i915_gem_object_pin_pages_unlocked(obj);
1511 if (err)
1512 goto out_put;
1513
1514 if (obj->mm.page_sizes.phys < I915_GTT_PAGE_SIZE_64K) {
1515 pr_info("LMEM compact unable to allocate huge-page(s)\n");
1516 goto out_unpin;
1517 }
1518
1519 /*
1520 * Disable 2M GTT pages by forcing the page-size to 64K for the GTT
1521 * insertion.
1522 */
1523 obj->mm.page_sizes.sg = I915_GTT_PAGE_SIZE_64K;
1524
1525 err = igt_write_huge(i915, obj);
1526 if (err)
1527 pr_err("LMEM compact write-huge failed\n");
1528
1529 out_unpin:
1530 i915_gem_object_unpin_pages(obj);
1531 out_put:
1532 i915_gem_object_put(obj);
1533
1534 if (err == -ENOMEM)
1535 err = 0;
1536
1537 return err;
1538 }
1539
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
^ permalink raw reply [flat|nested] 2+ messages in thread* Re: [PATCH v3 3/5] drm/i915: support 64K GTT pages for discrete cards
[not found] <20220120203721.632424-4-bob.beckett@collabora.com>
2022-01-21 10:31 ` [PATCH v3 3/5] drm/i915: support 64K GTT pages for discrete cards kernel test robot
@ 2022-01-21 13:55 ` kernel test robot
1 sibling, 0 replies; 2+ messages in thread
From: kernel test robot @ 2022-01-21 13:55 UTC (permalink / raw)
To: Robert Beckett; +Cc: llvm, kbuild-all
Hi Robert,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on drm-tip/drm-tip]
[cannot apply to drm-intel/for-linux-next drm-exynos/exynos-drm-next drm/drm-next tegra-drm/drm/tegra/for-next airlied/drm-next v5.16 next-20220121]
[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/Robert-Beckett/discrete-card-64K-page-support/20220121-044244
base: git://anongit.freedesktop.org/drm/drm-tip drm-tip
config: i386-randconfig-a013 (https://download.01.org/0day-ci/archive/20220121/202201212115.DdoJRHbQ-lkp@intel.com/config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 7b3d30728816403d1fd73cc5082e9fb761262bce)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/0day-ci/linux/commit/7547f27d09bac4e34155aca7ed017c04b7531e52
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Robert-Beckett/discrete-card-64K-page-support/20220121-044244
git checkout 7547f27d09bac4e34155aca7ed017c04b7531e52
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/gpu/drm/i915/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
In file included from drivers/gpu/drm/i915/gem/i915_gem_object.c:807:
>> drivers/gpu/drm/i915/gem/selftests/huge_pages.c:1508:10: warning: variable 'err' is uninitialized when used here [-Wuninitialized]
return err;
^~~
drivers/gpu/drm/i915/gem/selftests/huge_pages.c:1485:9: note: initialize the variable 'err' to silence this warning
int err;
^
= 0
1 warning generated.
vim +/err +1508 drivers/gpu/drm/i915/gem/selftests/huge_pages.c
1480
1481 static int igt_ppgtt_compact(void *arg)
1482 {
1483 struct drm_i915_private *i915 = arg;
1484 struct drm_i915_gem_object *obj;
1485 int err;
1486
1487 /*
1488 * Simple test to catch issues with compact 64K pages -- since the pt is
1489 * compacted to 256B that gives us 32 entries per pt, however since the
1490 * backing page for the pt is 4K, any extra entries we might incorrectly
1491 * write out should be ignored by the HW. If ever hit such a case this
1492 * test should catch it since some of our writes would land in scratch.
1493 */
1494
1495 if (!HAS_64K_PAGES(i915)) {
1496 pr_info("device lacks compact 64K page support, skipping\n");
1497 return 0;
1498 }
1499
1500 if (!HAS_LMEM(i915)) {
1501 pr_info("device lacks LMEM support, skipping\n");
1502 return 0;
1503 }
1504
1505 /* We want the range to cover multiple page-table boundaries. */
1506 obj = i915_gem_object_create_lmem(i915, SZ_4M, 0);
1507 if (IS_ERR(obj))
> 1508 return err;
1509
1510 err = i915_gem_object_pin_pages_unlocked(obj);
1511 if (err)
1512 goto out_put;
1513
1514 if (obj->mm.page_sizes.phys < I915_GTT_PAGE_SIZE_64K) {
1515 pr_info("LMEM compact unable to allocate huge-page(s)\n");
1516 goto out_unpin;
1517 }
1518
1519 /*
1520 * Disable 2M GTT pages by forcing the page-size to 64K for the GTT
1521 * insertion.
1522 */
1523 obj->mm.page_sizes.sg = I915_GTT_PAGE_SIZE_64K;
1524
1525 err = igt_write_huge(i915, obj);
1526 if (err)
1527 pr_err("LMEM compact write-huge failed\n");
1528
1529 out_unpin:
1530 i915_gem_object_unpin_pages(obj);
1531 out_put:
1532 i915_gem_object_put(obj);
1533
1534 if (err == -ENOMEM)
1535 err = 0;
1536
1537 return err;
1538 }
1539
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
^ permalink raw reply [flat|nested] 2+ messages in thread