All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Lucas De Marchi <lucas.demarchi@intel.com>,
	intel-gfx@lists.freedesktop.org
Cc: tejas.upadhyay@intel.com, llvm@lists.linux.dev,
	kbuild-all@lists.01.org, dri-devel@lists.freedesktop.org
Subject: Re: [Intel-gfx] [PATCH v1 2/4] drm/i915: Add missing mask when reading GEN12_DSMBASE
Date: Fri, 16 Sep 2022 09:04:42 +0800	[thread overview]
Message-ID: <202209160835.MMBeObmU-lkp@intel.com> (raw)
In-Reply-To: <20220915-stolen-v1-2-117c5f295bb2@intel.com>

Hi Lucas,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on bb4f6b2281b11b009210f62eecd291f7b75c1e85]

url:    https://github.com/intel-lab-lkp/linux/commits/Lucas-De-Marchi/drm-i915-Improvements-to-stolen-memory-setup/20220916-044155
base:   bb4f6b2281b11b009210f62eecd291f7b75c1e85
config: i386-randconfig-a011 (https://download.01.org/0day-ci/archive/20220916/202209160835.MMBeObmU-lkp@intel.com/config)
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1)
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/intel-lab-lkp/linux/commit/b0c14c92efecabadc483675b606c1ce109cfa415
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Lucas-De-Marchi/drm-i915-Improvements-to-stolen-memory-setup/20220916-044155
        git checkout b0c14c92efecabadc483675b606c1ce109cfa415
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        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 where applicable
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

>> drivers/gpu/drm/i915/gem/i915_gem_stolen.c:817:58: warning: shift count is negative [-Wshift-count-negative]
           dsm_base = intel_uncore_read64(uncore, GEN12_DSMBASE) & GEN12_BDSM_MASK;
                                                                   ^~~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_reg.h:7956:28: note: expanded from macro 'GEN12_BDSM_MASK'
   #define   GEN12_BDSM_MASK               GENMASK(63, 20)
                                           ^~~~~~~~~~~~~~~
   include/linux/bits.h:38:31: note: expanded from macro 'GENMASK'
           (GENMASK_INPUT_CHECK(h, l) + __GENMASK(h, l))
                                        ^~~~~~~~~~~~~~~
   include/linux/bits.h:36:11: note: expanded from macro '__GENMASK'
            (~UL(0) >> (BITS_PER_LONG - 1 - (h))))
                    ^  ~~~~~~~~~~~~~~~~~~~~~~~~~
   1 warning generated.


vim +817 drivers/gpu/drm/i915/gem/i915_gem_stolen.c

   798	
   799	struct intel_memory_region *
   800	i915_gem_stolen_lmem_setup(struct drm_i915_private *i915, u16 type,
   801				   u16 instance)
   802	{
   803		struct intel_uncore *uncore = &i915->uncore;
   804		struct pci_dev *pdev = to_pci_dev(i915->drm.dev);
   805		resource_size_t dsm_size, dsm_base, lmem_size;
   806		struct intel_memory_region *mem;
   807		resource_size_t io_start, io_size;
   808		resource_size_t min_page_size;
   809	
   810		if (WARN_ON_ONCE(instance))
   811			return ERR_PTR(-ENODEV);
   812	
   813		if (!i915_pci_resource_valid(pdev, GEN12_LMEM_BAR))
   814			return ERR_PTR(-ENXIO);
   815	
   816		/* Use DSM base address instead for stolen memory */
 > 817		dsm_base = intel_uncore_read64(uncore, GEN12_DSMBASE) & GEN12_BDSM_MASK;
   818		if (IS_DG1(uncore->i915)) {
   819			lmem_size = pci_resource_len(pdev, GEN12_LMEM_BAR);
   820			if (WARN_ON(lmem_size < dsm_base))
   821				return ERR_PTR(-ENODEV);
   822		} else {
   823			resource_size_t lmem_range;
   824	
   825			lmem_range = intel_gt_mcr_read_any(&i915->gt0, XEHP_TILE0_ADDR_RANGE) & 0xFFFF;
   826			lmem_size = lmem_range >> XEHP_TILE_LMEM_RANGE_SHIFT;
   827			lmem_size *= SZ_1G;
   828		}
   829	
   830		dsm_size = lmem_size - dsm_base;
   831		if (pci_resource_len(pdev, GEN12_LMEM_BAR) < lmem_size) {
   832			io_start = 0;
   833			io_size = 0;
   834		} else {
   835			io_start = pci_resource_start(pdev, GEN12_LMEM_BAR) + dsm_base;
   836			io_size = dsm_size;
   837		}
   838	
   839		min_page_size = HAS_64K_PAGES(i915) ? I915_GTT_PAGE_SIZE_64K :
   840							I915_GTT_PAGE_SIZE_4K;
   841	
   842		mem = intel_memory_region_create(i915, dsm_base, dsm_size,
   843						 min_page_size,
   844						 io_start, io_size,
   845						 type, instance,
   846						 &i915_region_stolen_lmem_ops);
   847		if (IS_ERR(mem))
   848			return mem;
   849	
   850		/*
   851		 * TODO: consider creating common helper to just print all the
   852		 * interesting stuff from intel_memory_region, which we can use for all
   853		 * our probed regions.
   854		 */
   855	
   856		drm_dbg(&i915->drm, "Stolen Local memory IO start: %pa\n",
   857			&mem->io_start);
   858		drm_dbg(&i915->drm, "Stolen Local DSM base: %pa\n", &dsm_base);
   859	
   860		intel_memory_region_set_name(mem, "stolen-local");
   861	
   862		mem->private = true;
   863	
   864		return mem;
   865	}
   866	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: Lucas De Marchi <lucas.demarchi@intel.com>,
	intel-gfx@lists.freedesktop.org
Cc: llvm@lists.linux.dev, kbuild-all@lists.01.org,
	tejas.upadhyay@intel.com, dri-devel@lists.freedesktop.org
Subject: Re: [Intel-gfx] [PATCH v1 2/4] drm/i915: Add missing mask when reading GEN12_DSMBASE
Date: Fri, 16 Sep 2022 09:04:42 +0800	[thread overview]
Message-ID: <202209160835.MMBeObmU-lkp@intel.com> (raw)
In-Reply-To: <20220915-stolen-v1-2-117c5f295bb2@intel.com>

Hi Lucas,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on bb4f6b2281b11b009210f62eecd291f7b75c1e85]

url:    https://github.com/intel-lab-lkp/linux/commits/Lucas-De-Marchi/drm-i915-Improvements-to-stolen-memory-setup/20220916-044155
base:   bb4f6b2281b11b009210f62eecd291f7b75c1e85
config: i386-randconfig-a011 (https://download.01.org/0day-ci/archive/20220916/202209160835.MMBeObmU-lkp@intel.com/config)
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1)
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/intel-lab-lkp/linux/commit/b0c14c92efecabadc483675b606c1ce109cfa415
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Lucas-De-Marchi/drm-i915-Improvements-to-stolen-memory-setup/20220916-044155
        git checkout b0c14c92efecabadc483675b606c1ce109cfa415
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        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 where applicable
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

>> drivers/gpu/drm/i915/gem/i915_gem_stolen.c:817:58: warning: shift count is negative [-Wshift-count-negative]
           dsm_base = intel_uncore_read64(uncore, GEN12_DSMBASE) & GEN12_BDSM_MASK;
                                                                   ^~~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_reg.h:7956:28: note: expanded from macro 'GEN12_BDSM_MASK'
   #define   GEN12_BDSM_MASK               GENMASK(63, 20)
                                           ^~~~~~~~~~~~~~~
   include/linux/bits.h:38:31: note: expanded from macro 'GENMASK'
           (GENMASK_INPUT_CHECK(h, l) + __GENMASK(h, l))
                                        ^~~~~~~~~~~~~~~
   include/linux/bits.h:36:11: note: expanded from macro '__GENMASK'
            (~UL(0) >> (BITS_PER_LONG - 1 - (h))))
                    ^  ~~~~~~~~~~~~~~~~~~~~~~~~~
   1 warning generated.


vim +817 drivers/gpu/drm/i915/gem/i915_gem_stolen.c

   798	
   799	struct intel_memory_region *
   800	i915_gem_stolen_lmem_setup(struct drm_i915_private *i915, u16 type,
   801				   u16 instance)
   802	{
   803		struct intel_uncore *uncore = &i915->uncore;
   804		struct pci_dev *pdev = to_pci_dev(i915->drm.dev);
   805		resource_size_t dsm_size, dsm_base, lmem_size;
   806		struct intel_memory_region *mem;
   807		resource_size_t io_start, io_size;
   808		resource_size_t min_page_size;
   809	
   810		if (WARN_ON_ONCE(instance))
   811			return ERR_PTR(-ENODEV);
   812	
   813		if (!i915_pci_resource_valid(pdev, GEN12_LMEM_BAR))
   814			return ERR_PTR(-ENXIO);
   815	
   816		/* Use DSM base address instead for stolen memory */
 > 817		dsm_base = intel_uncore_read64(uncore, GEN12_DSMBASE) & GEN12_BDSM_MASK;
   818		if (IS_DG1(uncore->i915)) {
   819			lmem_size = pci_resource_len(pdev, GEN12_LMEM_BAR);
   820			if (WARN_ON(lmem_size < dsm_base))
   821				return ERR_PTR(-ENODEV);
   822		} else {
   823			resource_size_t lmem_range;
   824	
   825			lmem_range = intel_gt_mcr_read_any(&i915->gt0, XEHP_TILE0_ADDR_RANGE) & 0xFFFF;
   826			lmem_size = lmem_range >> XEHP_TILE_LMEM_RANGE_SHIFT;
   827			lmem_size *= SZ_1G;
   828		}
   829	
   830		dsm_size = lmem_size - dsm_base;
   831		if (pci_resource_len(pdev, GEN12_LMEM_BAR) < lmem_size) {
   832			io_start = 0;
   833			io_size = 0;
   834		} else {
   835			io_start = pci_resource_start(pdev, GEN12_LMEM_BAR) + dsm_base;
   836			io_size = dsm_size;
   837		}
   838	
   839		min_page_size = HAS_64K_PAGES(i915) ? I915_GTT_PAGE_SIZE_64K :
   840							I915_GTT_PAGE_SIZE_4K;
   841	
   842		mem = intel_memory_region_create(i915, dsm_base, dsm_size,
   843						 min_page_size,
   844						 io_start, io_size,
   845						 type, instance,
   846						 &i915_region_stolen_lmem_ops);
   847		if (IS_ERR(mem))
   848			return mem;
   849	
   850		/*
   851		 * TODO: consider creating common helper to just print all the
   852		 * interesting stuff from intel_memory_region, which we can use for all
   853		 * our probed regions.
   854		 */
   855	
   856		drm_dbg(&i915->drm, "Stolen Local memory IO start: %pa\n",
   857			&mem->io_start);
   858		drm_dbg(&i915->drm, "Stolen Local DSM base: %pa\n", &dsm_base);
   859	
   860		intel_memory_region_set_name(mem, "stolen-local");
   861	
   862		mem->private = true;
   863	
   864		return mem;
   865	}
   866	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

  parent reply	other threads:[~2022-09-16  1:05 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-15 20:39 [Intel-gfx] [PATCH v1 0/4] drm/i915: Improvements to stolen memory setup Lucas De Marchi
2022-09-15 20:39 ` Lucas De Marchi
2022-09-15 20:39 ` [Intel-gfx] [PATCH v1 1/4] drm/i915: Move dsm assignment to be after adjustment Lucas De Marchi
2022-09-15 20:39   ` Lucas De Marchi
2022-09-16 11:57   ` [Intel-gfx] " Iddamsetty, Aravind
2022-09-16 11:57     ` Iddamsetty, Aravind
2022-09-15 20:39 ` [Intel-gfx] [PATCH v1 2/4] drm/i915: Add missing mask when reading GEN12_DSMBASE Lucas De Marchi
2022-09-15 20:39   ` Lucas De Marchi
2022-09-15 21:03   ` [Intel-gfx] " Caz Yokoyama
2022-09-16  0:33   ` kernel test robot
2022-09-16  1:04   ` kernel test robot [this message]
2022-09-16  1:04     ` kernel test robot
2022-09-16 11:58   ` Iddamsetty, Aravind
2022-09-16 11:58     ` Iddamsetty, Aravind
2022-09-15 20:39 ` [Intel-gfx] [PATCH v1 3/4] drm/i915: Split i915_gem_init_stolen() Lucas De Marchi
2022-09-15 20:39   ` Lucas De Marchi
2022-09-15 22:07   ` [Intel-gfx] [PATCH v1.1] " Lucas De Marchi
2022-09-15 22:07     ` Lucas De Marchi
2022-09-16 12:20   ` [Intel-gfx] [PATCH v1 3/4] " Iddamsetty, Aravind
2022-09-16 12:20     ` Iddamsetty, Aravind
2022-09-16 16:06     ` [Intel-gfx] " Lucas De Marchi
2022-09-16 16:06       ` Lucas De Marchi
2022-09-15 20:39 ` [Intel-gfx] [PATCH v1 4/4] drm/i915/dgfx: Make failure to setup stolen non-fatal Lucas De Marchi
2022-09-15 20:39   ` Lucas De Marchi
2022-09-15 21:02 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Improvements to stolen memory setup Patchwork
2022-09-15 21:02 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2022-09-15 21:18 ` [Intel-gfx] ✗ Fi.CI.BAT: failure " Patchwork
2022-09-15 21:54   ` Lucas De Marchi
2022-09-15 23:13 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: Improvements to stolen memory setup (rev2) Patchwork
2022-09-15 23:13 ` [Intel-gfx] ✗ Fi.CI.SPARSE: " Patchwork
2022-09-15 23:39 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2022-09-16  6:05 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork

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=202209160835.MMBeObmU-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=kbuild-all@lists.01.org \
    --cc=llvm@lists.linux.dev \
    --cc=lucas.demarchi@intel.com \
    --cc=tejas.upadhyay@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.