All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Marek Szyprowski <m.szyprowski@samsung.com>,
	dri-devel@lists.freedesktop.org,
	iommu@lists.linux-foundation.org, linaro-mm-sig@lists.linaro.org,
	linux-kernel@vger.kernel.org
Cc: kbuild-all@lists.01.org,
	Marek Szyprowski <m.szyprowski@samsung.com>,
	Christoph Hellwig <hch@lst.de>,
	Robin Murphy <robin.murphy@arm.com>,
	Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>,
	linux-arm-kernel@lists.infradead.org,
	David Airlie <airlied@linux.ie>
Subject: Re: [PATCH v6 04/36] drm: amdgpu: fix common struct sg_table related issues
Date: Fri, 19 Jun 2020 05:32:58 +0800	[thread overview]
Message-ID: <202006190540.nUhRBknR%lkp@intel.com> (raw)
In-Reply-To: <20200618153956.29558-5-m.szyprowski@samsung.com>

[-- Attachment #1: Type: text/plain, Size: 9021 bytes --]

Hi Marek,

I love your patch! Perhaps something to improve:

[auto build test WARNING on next-20200618]
[also build test WARNING on v5.8-rc1]
[cannot apply to linuxtv-media/master staging/staging-testing drm-exynos/exynos-drm-next drm-intel/for-linux-next linus/master v5.8-rc1 v5.7 v5.7-rc7]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use  as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Marek-Szyprowski/DRM-fix-struct-sg_table-nents-vs-orig_nents-misuse/20200619-000417
base:    ce2cc8efd7a40cbd17841add878cb691d0ce0bba
config: alpha-allyesconfig (attached as .config)
compiler: alpha-linux-gcc (GCC) 9.3.0
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
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha 

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 >>, old ones prefixed by <<):

In file included from include/linux/dma-mapping.h:11,
from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:25:
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c: In function 'amdgpu_vram_mgr_alloc_sgt':
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                 ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                      ^~~~~~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:480:2: note: in expansion of macro 'for_each_sgtable_sg'
480 |  for_each_sgtable_sg(*sgt, sg, i)
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                               ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                                      ^~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:480:2: note: in expansion of macro 'for_each_sgtable_sg'
480 |  for_each_sgtable_sg(*sgt, sg, i)
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                 ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                      ^~~~~~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:484:2: note: in expansion of macro 'for_each_sgtable_sg'
484 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                               ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                                      ^~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:484:2: note: in expansion of macro 'for_each_sgtable_sg'
484 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                 ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                      ^~~~~~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:504:2: note: in expansion of macro 'for_each_sgtable_sg'
504 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                               ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                                      ^~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:504:2: note: in expansion of macro 'for_each_sgtable_sg'
504 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:26:
At top level:
drivers/gpu/drm/amd/amdgpu/amdgpu.h:190:18: warning: 'sched_policy' defined but not used [-Wunused-const-variable=]
190 | static const int sched_policy = KFD_SCHED_POLICY_HWS;
|                  ^~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/../display/dc/dc_types.h:33,
from drivers/gpu/drm/amd/amdgpu/../display/dc/dm_services_types.h:30,
from drivers/gpu/drm/amd/amdgpu/../include/dm_pp_interface.h:26,
from drivers/gpu/drm/amd/amdgpu/amdgpu.h:65,
from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:26:
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:76:32: warning: 'dc_fixpt_ln2_div_2' defined but not used [-Wunused-const-variable=]
76 | static const struct fixed31_32 dc_fixpt_ln2_div_2 = { 1488522236LL };
|                                ^~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:75:32: warning: 'dc_fixpt_ln2' defined but not used [-Wunused-const-variable=]
75 | static const struct fixed31_32 dc_fixpt_ln2 = { 2977044471LL };
|                                ^~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:74:32: warning: 'dc_fixpt_e' defined but not used [-Wunused-const-variable=]
74 | static const struct fixed31_32 dc_fixpt_e = { 11674931555LL };
|                                ^~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:73:32: warning: 'dc_fixpt_two_pi' defined but not used [-Wunused-const-variable=]
73 | static const struct fixed31_32 dc_fixpt_two_pi = { 26986075409LL };
|                                ^~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:72:32: warning: 'dc_fixpt_pi' defined but not used [-Wunused-const-variable=]
72 | static const struct fixed31_32 dc_fixpt_pi = { 13493037705LL };
|                                ^~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:67:32: warning: 'dc_fixpt_zero' defined but not used [-Wunused-const-variable=]
67 | static const struct fixed31_32 dc_fixpt_zero = { 0 };
|                                ^~~~~~~~~~~~~

vim +/for_each_sgtable_sg +480 drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c

   444	
   445	/**
   446	 * amdgpu_vram_mgr_alloc_sgt - allocate and fill a sg table
   447	 *
   448	 * @adev: amdgpu device pointer
   449	 * @mem: TTM memory object
   450	 * @dev: the other device
   451	 * @dir: dma direction
   452	 * @sgt: resulting sg table
   453	 *
   454	 * Allocate and fill a sg table from a VRAM allocation.
   455	 */
   456	int amdgpu_vram_mgr_alloc_sgt(struct amdgpu_device *adev,
   457				      struct ttm_mem_reg *mem,
   458				      struct device *dev,
   459				      enum dma_data_direction dir,
   460				      struct sg_table **sgt)
   461	{
   462		struct drm_mm_node *node;
   463		struct scatterlist *sg;
   464		int num_entries = 0;
   465		unsigned int pages;
   466		int i, r;
   467	
   468		*sgt = kmalloc(sizeof(*sg), GFP_KERNEL);
   469		if (!*sgt)
   470			return -ENOMEM;
   471	
   472		for (pages = mem->num_pages, node = mem->mm_node;
   473		     pages; pages -= node->size, ++node)
   474			++num_entries;
   475	
   476		r = sg_alloc_table(*sgt, num_entries, GFP_KERNEL);
   477		if (r)
   478			goto error_free;
   479	
 > 480		for_each_sgtable_sg(*sgt, sg, i)
   481			sg->length = 0;
   482	
   483		node = mem->mm_node;
   484		for_each_sgtable_sg(*sgt, sg, i) {
   485			phys_addr_t phys = (node->start << PAGE_SHIFT) +
   486				adev->gmc.aper_base;
   487			size_t size = node->size << PAGE_SHIFT;
   488			dma_addr_t addr;
   489	
   490			++node;
   491			addr = dma_map_resource(dev, phys, size, dir,
   492						DMA_ATTR_SKIP_CPU_SYNC);
   493			r = dma_mapping_error(dev, addr);
   494			if (r)
   495				goto error_unmap;
   496	
   497			sg_set_page(sg, NULL, size, 0);
   498			sg_dma_address(sg) = addr;
   499			sg_dma_len(sg) = size;
   500		}
   501		return 0;
   502	
   503	error_unmap:
   504		for_each_sgtable_sg(*sgt, sg, i) {
   505			if (!sg->length)
   506				continue;
   507	
   508			dma_unmap_resource(dev, sg->dma_address,
   509					   sg->length, dir,
   510					   DMA_ATTR_SKIP_CPU_SYNC);
   511		}
   512		sg_free_table(*sgt);
   513	
   514	error_free:
   515		kfree(*sgt);
   516		return r;
   517	}
   518	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 65125 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: Marek Szyprowski <m.szyprowski@samsung.com>,
	dri-devel@lists.freedesktop.org,
	iommu@lists.linux-foundation.org, linaro-mm-sig@lists.linaro.org,
	linux-kernel@vger.kernel.org
Cc: kbuild-all@lists.01.org,
	Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>,
	David Airlie <airlied@linux.ie>,
	Robin Murphy <robin.murphy@arm.com>,
	Christoph Hellwig <hch@lst.de>,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v6 04/36] drm: amdgpu: fix common struct sg_table related issues
Date: Fri, 19 Jun 2020 05:32:58 +0800	[thread overview]
Message-ID: <202006190540.nUhRBknR%lkp@intel.com> (raw)
In-Reply-To: <20200618153956.29558-5-m.szyprowski@samsung.com>

[-- Attachment #1: Type: text/plain, Size: 9021 bytes --]

Hi Marek,

I love your patch! Perhaps something to improve:

[auto build test WARNING on next-20200618]
[also build test WARNING on v5.8-rc1]
[cannot apply to linuxtv-media/master staging/staging-testing drm-exynos/exynos-drm-next drm-intel/for-linux-next linus/master v5.8-rc1 v5.7 v5.7-rc7]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use  as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Marek-Szyprowski/DRM-fix-struct-sg_table-nents-vs-orig_nents-misuse/20200619-000417
base:    ce2cc8efd7a40cbd17841add878cb691d0ce0bba
config: alpha-allyesconfig (attached as .config)
compiler: alpha-linux-gcc (GCC) 9.3.0
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
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha 

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 >>, old ones prefixed by <<):

In file included from include/linux/dma-mapping.h:11,
from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:25:
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c: In function 'amdgpu_vram_mgr_alloc_sgt':
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                 ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                      ^~~~~~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:480:2: note: in expansion of macro 'for_each_sgtable_sg'
480 |  for_each_sgtable_sg(*sgt, sg, i)
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                               ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                                      ^~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:480:2: note: in expansion of macro 'for_each_sgtable_sg'
480 |  for_each_sgtable_sg(*sgt, sg, i)
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                 ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                      ^~~~~~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:484:2: note: in expansion of macro 'for_each_sgtable_sg'
484 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                               ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                                      ^~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:484:2: note: in expansion of macro 'for_each_sgtable_sg'
484 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                 ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                      ^~~~~~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:504:2: note: in expansion of macro 'for_each_sgtable_sg'
504 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                               ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                                      ^~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:504:2: note: in expansion of macro 'for_each_sgtable_sg'
504 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:26:
At top level:
drivers/gpu/drm/amd/amdgpu/amdgpu.h:190:18: warning: 'sched_policy' defined but not used [-Wunused-const-variable=]
190 | static const int sched_policy = KFD_SCHED_POLICY_HWS;
|                  ^~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/../display/dc/dc_types.h:33,
from drivers/gpu/drm/amd/amdgpu/../display/dc/dm_services_types.h:30,
from drivers/gpu/drm/amd/amdgpu/../include/dm_pp_interface.h:26,
from drivers/gpu/drm/amd/amdgpu/amdgpu.h:65,
from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:26:
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:76:32: warning: 'dc_fixpt_ln2_div_2' defined but not used [-Wunused-const-variable=]
76 | static const struct fixed31_32 dc_fixpt_ln2_div_2 = { 1488522236LL };
|                                ^~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:75:32: warning: 'dc_fixpt_ln2' defined but not used [-Wunused-const-variable=]
75 | static const struct fixed31_32 dc_fixpt_ln2 = { 2977044471LL };
|                                ^~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:74:32: warning: 'dc_fixpt_e' defined but not used [-Wunused-const-variable=]
74 | static const struct fixed31_32 dc_fixpt_e = { 11674931555LL };
|                                ^~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:73:32: warning: 'dc_fixpt_two_pi' defined but not used [-Wunused-const-variable=]
73 | static const struct fixed31_32 dc_fixpt_two_pi = { 26986075409LL };
|                                ^~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:72:32: warning: 'dc_fixpt_pi' defined but not used [-Wunused-const-variable=]
72 | static const struct fixed31_32 dc_fixpt_pi = { 13493037705LL };
|                                ^~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:67:32: warning: 'dc_fixpt_zero' defined but not used [-Wunused-const-variable=]
67 | static const struct fixed31_32 dc_fixpt_zero = { 0 };
|                                ^~~~~~~~~~~~~

vim +/for_each_sgtable_sg +480 drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c

   444	
   445	/**
   446	 * amdgpu_vram_mgr_alloc_sgt - allocate and fill a sg table
   447	 *
   448	 * @adev: amdgpu device pointer
   449	 * @mem: TTM memory object
   450	 * @dev: the other device
   451	 * @dir: dma direction
   452	 * @sgt: resulting sg table
   453	 *
   454	 * Allocate and fill a sg table from a VRAM allocation.
   455	 */
   456	int amdgpu_vram_mgr_alloc_sgt(struct amdgpu_device *adev,
   457				      struct ttm_mem_reg *mem,
   458				      struct device *dev,
   459				      enum dma_data_direction dir,
   460				      struct sg_table **sgt)
   461	{
   462		struct drm_mm_node *node;
   463		struct scatterlist *sg;
   464		int num_entries = 0;
   465		unsigned int pages;
   466		int i, r;
   467	
   468		*sgt = kmalloc(sizeof(*sg), GFP_KERNEL);
   469		if (!*sgt)
   470			return -ENOMEM;
   471	
   472		for (pages = mem->num_pages, node = mem->mm_node;
   473		     pages; pages -= node->size, ++node)
   474			++num_entries;
   475	
   476		r = sg_alloc_table(*sgt, num_entries, GFP_KERNEL);
   477		if (r)
   478			goto error_free;
   479	
 > 480		for_each_sgtable_sg(*sgt, sg, i)
   481			sg->length = 0;
   482	
   483		node = mem->mm_node;
   484		for_each_sgtable_sg(*sgt, sg, i) {
   485			phys_addr_t phys = (node->start << PAGE_SHIFT) +
   486				adev->gmc.aper_base;
   487			size_t size = node->size << PAGE_SHIFT;
   488			dma_addr_t addr;
   489	
   490			++node;
   491			addr = dma_map_resource(dev, phys, size, dir,
   492						DMA_ATTR_SKIP_CPU_SYNC);
   493			r = dma_mapping_error(dev, addr);
   494			if (r)
   495				goto error_unmap;
   496	
   497			sg_set_page(sg, NULL, size, 0);
   498			sg_dma_address(sg) = addr;
   499			sg_dma_len(sg) = size;
   500		}
   501		return 0;
   502	
   503	error_unmap:
   504		for_each_sgtable_sg(*sgt, sg, i) {
   505			if (!sg->length)
   506				continue;
   507	
   508			dma_unmap_resource(dev, sg->dma_address,
   509					   sg->length, dir,
   510					   DMA_ATTR_SKIP_CPU_SYNC);
   511		}
   512		sg_free_table(*sgt);
   513	
   514	error_free:
   515		kfree(*sgt);
   516		return r;
   517	}
   518	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 65125 bytes --]

[-- Attachment #3: Type: text/plain, Size: 156 bytes --]

_______________________________________________
iommu mailing list
iommu@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/iommu

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: Marek Szyprowski <m.szyprowski@samsung.com>,
	dri-devel@lists.freedesktop.org,
	iommu@lists.linux-foundation.org, linaro-mm-sig@lists.linaro.org,
	linux-kernel@vger.kernel.org
Cc: kbuild-all@lists.01.org,
	Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>,
	David Airlie <airlied@linux.ie>,
	Robin Murphy <robin.murphy@arm.com>,
	Christoph Hellwig <hch@lst.de>,
	linux-arm-kernel@lists.infradead.org,
	Marek Szyprowski <m.szyprowski@samsung.com>
Subject: Re: [PATCH v6 04/36] drm: amdgpu: fix common struct sg_table related issues
Date: Fri, 19 Jun 2020 05:32:58 +0800	[thread overview]
Message-ID: <202006190540.nUhRBknR%lkp@intel.com> (raw)
In-Reply-To: <20200618153956.29558-5-m.szyprowski@samsung.com>

[-- Attachment #1: Type: text/plain, Size: 9021 bytes --]

Hi Marek,

I love your patch! Perhaps something to improve:

[auto build test WARNING on next-20200618]
[also build test WARNING on v5.8-rc1]
[cannot apply to linuxtv-media/master staging/staging-testing drm-exynos/exynos-drm-next drm-intel/for-linux-next linus/master v5.8-rc1 v5.7 v5.7-rc7]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use  as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Marek-Szyprowski/DRM-fix-struct-sg_table-nents-vs-orig_nents-misuse/20200619-000417
base:    ce2cc8efd7a40cbd17841add878cb691d0ce0bba
config: alpha-allyesconfig (attached as .config)
compiler: alpha-linux-gcc (GCC) 9.3.0
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
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha 

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 >>, old ones prefixed by <<):

In file included from include/linux/dma-mapping.h:11,
from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:25:
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c: In function 'amdgpu_vram_mgr_alloc_sgt':
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                 ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                      ^~~~~~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:480:2: note: in expansion of macro 'for_each_sgtable_sg'
480 |  for_each_sgtable_sg(*sgt, sg, i)
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                               ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                                      ^~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:480:2: note: in expansion of macro 'for_each_sgtable_sg'
480 |  for_each_sgtable_sg(*sgt, sg, i)
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                 ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                      ^~~~~~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:484:2: note: in expansion of macro 'for_each_sgtable_sg'
484 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                               ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                                      ^~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:484:2: note: in expansion of macro 'for_each_sgtable_sg'
484 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                 ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                      ^~~~~~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:504:2: note: in expansion of macro 'for_each_sgtable_sg'
504 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                               ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                                      ^~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:504:2: note: in expansion of macro 'for_each_sgtable_sg'
504 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:26:
At top level:
drivers/gpu/drm/amd/amdgpu/amdgpu.h:190:18: warning: 'sched_policy' defined but not used [-Wunused-const-variable=]
190 | static const int sched_policy = KFD_SCHED_POLICY_HWS;
|                  ^~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/../display/dc/dc_types.h:33,
from drivers/gpu/drm/amd/amdgpu/../display/dc/dm_services_types.h:30,
from drivers/gpu/drm/amd/amdgpu/../include/dm_pp_interface.h:26,
from drivers/gpu/drm/amd/amdgpu/amdgpu.h:65,
from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:26:
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:76:32: warning: 'dc_fixpt_ln2_div_2' defined but not used [-Wunused-const-variable=]
76 | static const struct fixed31_32 dc_fixpt_ln2_div_2 = { 1488522236LL };
|                                ^~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:75:32: warning: 'dc_fixpt_ln2' defined but not used [-Wunused-const-variable=]
75 | static const struct fixed31_32 dc_fixpt_ln2 = { 2977044471LL };
|                                ^~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:74:32: warning: 'dc_fixpt_e' defined but not used [-Wunused-const-variable=]
74 | static const struct fixed31_32 dc_fixpt_e = { 11674931555LL };
|                                ^~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:73:32: warning: 'dc_fixpt_two_pi' defined but not used [-Wunused-const-variable=]
73 | static const struct fixed31_32 dc_fixpt_two_pi = { 26986075409LL };
|                                ^~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:72:32: warning: 'dc_fixpt_pi' defined but not used [-Wunused-const-variable=]
72 | static const struct fixed31_32 dc_fixpt_pi = { 13493037705LL };
|                                ^~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:67:32: warning: 'dc_fixpt_zero' defined but not used [-Wunused-const-variable=]
67 | static const struct fixed31_32 dc_fixpt_zero = { 0 };
|                                ^~~~~~~~~~~~~

vim +/for_each_sgtable_sg +480 drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c

   444	
   445	/**
   446	 * amdgpu_vram_mgr_alloc_sgt - allocate and fill a sg table
   447	 *
   448	 * @adev: amdgpu device pointer
   449	 * @mem: TTM memory object
   450	 * @dev: the other device
   451	 * @dir: dma direction
   452	 * @sgt: resulting sg table
   453	 *
   454	 * Allocate and fill a sg table from a VRAM allocation.
   455	 */
   456	int amdgpu_vram_mgr_alloc_sgt(struct amdgpu_device *adev,
   457				      struct ttm_mem_reg *mem,
   458				      struct device *dev,
   459				      enum dma_data_direction dir,
   460				      struct sg_table **sgt)
   461	{
   462		struct drm_mm_node *node;
   463		struct scatterlist *sg;
   464		int num_entries = 0;
   465		unsigned int pages;
   466		int i, r;
   467	
   468		*sgt = kmalloc(sizeof(*sg), GFP_KERNEL);
   469		if (!*sgt)
   470			return -ENOMEM;
   471	
   472		for (pages = mem->num_pages, node = mem->mm_node;
   473		     pages; pages -= node->size, ++node)
   474			++num_entries;
   475	
   476		r = sg_alloc_table(*sgt, num_entries, GFP_KERNEL);
   477		if (r)
   478			goto error_free;
   479	
 > 480		for_each_sgtable_sg(*sgt, sg, i)
   481			sg->length = 0;
   482	
   483		node = mem->mm_node;
   484		for_each_sgtable_sg(*sgt, sg, i) {
   485			phys_addr_t phys = (node->start << PAGE_SHIFT) +
   486				adev->gmc.aper_base;
   487			size_t size = node->size << PAGE_SHIFT;
   488			dma_addr_t addr;
   489	
   490			++node;
   491			addr = dma_map_resource(dev, phys, size, dir,
   492						DMA_ATTR_SKIP_CPU_SYNC);
   493			r = dma_mapping_error(dev, addr);
   494			if (r)
   495				goto error_unmap;
   496	
   497			sg_set_page(sg, NULL, size, 0);
   498			sg_dma_address(sg) = addr;
   499			sg_dma_len(sg) = size;
   500		}
   501		return 0;
   502	
   503	error_unmap:
   504		for_each_sgtable_sg(*sgt, sg, i) {
   505			if (!sg->length)
   506				continue;
   507	
   508			dma_unmap_resource(dev, sg->dma_address,
   509					   sg->length, dir,
   510					   DMA_ATTR_SKIP_CPU_SYNC);
   511		}
   512		sg_free_table(*sgt);
   513	
   514	error_free:
   515		kfree(*sgt);
   516		return r;
   517	}
   518	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 65125 bytes --]

[-- Attachment #3: Type: text/plain, Size: 176 bytes --]

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: Marek Szyprowski <m.szyprowski@samsung.com>,
	dri-devel@lists.freedesktop.org,
	iommu@lists.linux-foundation.org, linaro-mm-sig@lists.linaro.org,
	linux-kernel@vger.kernel.org
Cc: kbuild-all@lists.01.org,
	Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>,
	David Airlie <airlied@linux.ie>,
	Robin Murphy <robin.murphy@arm.com>,
	Christoph Hellwig <hch@lst.de>,
	linux-arm-kernel@lists.infradead.org,
	Marek Szyprowski <m.szyprowski@samsung.com>
Subject: Re: [PATCH v6 04/36] drm: amdgpu: fix common struct sg_table related issues
Date: Fri, 19 Jun 2020 05:32:58 +0800	[thread overview]
Message-ID: <202006190540.nUhRBknR%lkp@intel.com> (raw)
In-Reply-To: <20200618153956.29558-5-m.szyprowski@samsung.com>

[-- Attachment #1: Type: text/plain, Size: 9021 bytes --]

Hi Marek,

I love your patch! Perhaps something to improve:

[auto build test WARNING on next-20200618]
[also build test WARNING on v5.8-rc1]
[cannot apply to linuxtv-media/master staging/staging-testing drm-exynos/exynos-drm-next drm-intel/for-linux-next linus/master v5.8-rc1 v5.7 v5.7-rc7]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use  as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Marek-Szyprowski/DRM-fix-struct-sg_table-nents-vs-orig_nents-misuse/20200619-000417
base:    ce2cc8efd7a40cbd17841add878cb691d0ce0bba
config: alpha-allyesconfig (attached as .config)
compiler: alpha-linux-gcc (GCC) 9.3.0
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
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha 

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 >>, old ones prefixed by <<):

In file included from include/linux/dma-mapping.h:11,
from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:25:
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c: In function 'amdgpu_vram_mgr_alloc_sgt':
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                 ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                      ^~~~~~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:480:2: note: in expansion of macro 'for_each_sgtable_sg'
480 |  for_each_sgtable_sg(*sgt, sg, i)
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                               ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                                      ^~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:480:2: note: in expansion of macro 'for_each_sgtable_sg'
480 |  for_each_sgtable_sg(*sgt, sg, i)
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                 ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                      ^~~~~~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:484:2: note: in expansion of macro 'for_each_sgtable_sg'
484 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                               ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                                      ^~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:484:2: note: in expansion of macro 'for_each_sgtable_sg'
484 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                 ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                      ^~~~~~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:504:2: note: in expansion of macro 'for_each_sgtable_sg'
504 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                               ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                                      ^~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:504:2: note: in expansion of macro 'for_each_sgtable_sg'
504 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:26:
At top level:
drivers/gpu/drm/amd/amdgpu/amdgpu.h:190:18: warning: 'sched_policy' defined but not used [-Wunused-const-variable=]
190 | static const int sched_policy = KFD_SCHED_POLICY_HWS;
|                  ^~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/../display/dc/dc_types.h:33,
from drivers/gpu/drm/amd/amdgpu/../display/dc/dm_services_types.h:30,
from drivers/gpu/drm/amd/amdgpu/../include/dm_pp_interface.h:26,
from drivers/gpu/drm/amd/amdgpu/amdgpu.h:65,
from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:26:
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:76:32: warning: 'dc_fixpt_ln2_div_2' defined but not used [-Wunused-const-variable=]
76 | static const struct fixed31_32 dc_fixpt_ln2_div_2 = { 1488522236LL };
|                                ^~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:75:32: warning: 'dc_fixpt_ln2' defined but not used [-Wunused-const-variable=]
75 | static const struct fixed31_32 dc_fixpt_ln2 = { 2977044471LL };
|                                ^~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:74:32: warning: 'dc_fixpt_e' defined but not used [-Wunused-const-variable=]
74 | static const struct fixed31_32 dc_fixpt_e = { 11674931555LL };
|                                ^~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:73:32: warning: 'dc_fixpt_two_pi' defined but not used [-Wunused-const-variable=]
73 | static const struct fixed31_32 dc_fixpt_two_pi = { 26986075409LL };
|                                ^~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:72:32: warning: 'dc_fixpt_pi' defined but not used [-Wunused-const-variable=]
72 | static const struct fixed31_32 dc_fixpt_pi = { 13493037705LL };
|                                ^~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:67:32: warning: 'dc_fixpt_zero' defined but not used [-Wunused-const-variable=]
67 | static const struct fixed31_32 dc_fixpt_zero = { 0 };
|                                ^~~~~~~~~~~~~

vim +/for_each_sgtable_sg +480 drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c

   444	
   445	/**
   446	 * amdgpu_vram_mgr_alloc_sgt - allocate and fill a sg table
   447	 *
   448	 * @adev: amdgpu device pointer
   449	 * @mem: TTM memory object
   450	 * @dev: the other device
   451	 * @dir: dma direction
   452	 * @sgt: resulting sg table
   453	 *
   454	 * Allocate and fill a sg table from a VRAM allocation.
   455	 */
   456	int amdgpu_vram_mgr_alloc_sgt(struct amdgpu_device *adev,
   457				      struct ttm_mem_reg *mem,
   458				      struct device *dev,
   459				      enum dma_data_direction dir,
   460				      struct sg_table **sgt)
   461	{
   462		struct drm_mm_node *node;
   463		struct scatterlist *sg;
   464		int num_entries = 0;
   465		unsigned int pages;
   466		int i, r;
   467	
   468		*sgt = kmalloc(sizeof(*sg), GFP_KERNEL);
   469		if (!*sgt)
   470			return -ENOMEM;
   471	
   472		for (pages = mem->num_pages, node = mem->mm_node;
   473		     pages; pages -= node->size, ++node)
   474			++num_entries;
   475	
   476		r = sg_alloc_table(*sgt, num_entries, GFP_KERNEL);
   477		if (r)
   478			goto error_free;
   479	
 > 480		for_each_sgtable_sg(*sgt, sg, i)
   481			sg->length = 0;
   482	
   483		node = mem->mm_node;
   484		for_each_sgtable_sg(*sgt, sg, i) {
   485			phys_addr_t phys = (node->start << PAGE_SHIFT) +
   486				adev->gmc.aper_base;
   487			size_t size = node->size << PAGE_SHIFT;
   488			dma_addr_t addr;
   489	
   490			++node;
   491			addr = dma_map_resource(dev, phys, size, dir,
   492						DMA_ATTR_SKIP_CPU_SYNC);
   493			r = dma_mapping_error(dev, addr);
   494			if (r)
   495				goto error_unmap;
   496	
   497			sg_set_page(sg, NULL, size, 0);
   498			sg_dma_address(sg) = addr;
   499			sg_dma_len(sg) = size;
   500		}
   501		return 0;
   502	
   503	error_unmap:
   504		for_each_sgtable_sg(*sgt, sg, i) {
   505			if (!sg->length)
   506				continue;
   507	
   508			dma_unmap_resource(dev, sg->dma_address,
   509					   sg->length, dir,
   510					   DMA_ATTR_SKIP_CPU_SYNC);
   511		}
   512		sg_free_table(*sgt);
   513	
   514	error_free:
   515		kfree(*sgt);
   516		return r;
   517	}
   518	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 65125 bytes --]

[-- Attachment #3: Type: text/plain, Size: 160 bytes --]

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [PATCH v6 04/36] drm: amdgpu: fix common struct sg_table related issues
Date: Fri, 19 Jun 2020 05:32:58 +0800	[thread overview]
Message-ID: <202006190540.nUhRBknR%lkp@intel.com> (raw)
In-Reply-To: <20200618153956.29558-5-m.szyprowski@samsung.com>

[-- Attachment #1: Type: text/plain, Size: 9216 bytes --]

Hi Marek,

I love your patch! Perhaps something to improve:

[auto build test WARNING on next-20200618]
[also build test WARNING on v5.8-rc1]
[cannot apply to linuxtv-media/master staging/staging-testing drm-exynos/exynos-drm-next drm-intel/for-linux-next linus/master v5.8-rc1 v5.7 v5.7-rc7]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use  as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Marek-Szyprowski/DRM-fix-struct-sg_table-nents-vs-orig_nents-misuse/20200619-000417
base:    ce2cc8efd7a40cbd17841add878cb691d0ce0bba
config: alpha-allyesconfig (attached as .config)
compiler: alpha-linux-gcc (GCC) 9.3.0
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
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha 

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 >>, old ones prefixed by <<):

In file included from include/linux/dma-mapping.h:11,
from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:25:
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c: In function 'amdgpu_vram_mgr_alloc_sgt':
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                 ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                      ^~~~~~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:480:2: note: in expansion of macro 'for_each_sgtable_sg'
480 |  for_each_sgtable_sg(*sgt, sg, i)
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                               ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                                      ^~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:480:2: note: in expansion of macro 'for_each_sgtable_sg'
480 |  for_each_sgtable_sg(*sgt, sg, i)
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                 ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                      ^~~~~~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:484:2: note: in expansion of macro 'for_each_sgtable_sg'
484 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                               ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                                      ^~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:484:2: note: in expansion of macro 'for_each_sgtable_sg'
484 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:17: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                 ^~
include/linux/scatterlist.h:152:22: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                      ^~~~~~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:504:2: note: in expansion of macro 'for_each_sgtable_sg'
504 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
include/linux/scatterlist.h:158:31: error: '*sgt' is a pointer; did you mean to use '->'?
158 |  for_each_sg(sgt->sgl, sg, sgt->orig_nents, i)
|                               ^~
include/linux/scatterlist.h:152:38: note: in definition of macro 'for_each_sg'
152 |  for (__i = 0, sg = (sglist); __i < (nr); __i++, sg = sg_next(sg))
|                                      ^~
drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:504:2: note: in expansion of macro 'for_each_sgtable_sg'
504 |  for_each_sgtable_sg(*sgt, sg, i) {
|  ^~~~~~~~~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:26:
At top level:
drivers/gpu/drm/amd/amdgpu/amdgpu.h:190:18: warning: 'sched_policy' defined but not used [-Wunused-const-variable=]
190 | static const int sched_policy = KFD_SCHED_POLICY_HWS;
|                  ^~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/../display/dc/dc_types.h:33,
from drivers/gpu/drm/amd/amdgpu/../display/dc/dm_services_types.h:30,
from drivers/gpu/drm/amd/amdgpu/../include/dm_pp_interface.h:26,
from drivers/gpu/drm/amd/amdgpu/amdgpu.h:65,
from drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c:26:
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:76:32: warning: 'dc_fixpt_ln2_div_2' defined but not used [-Wunused-const-variable=]
76 | static const struct fixed31_32 dc_fixpt_ln2_div_2 = { 1488522236LL };
|                                ^~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:75:32: warning: 'dc_fixpt_ln2' defined but not used [-Wunused-const-variable=]
75 | static const struct fixed31_32 dc_fixpt_ln2 = { 2977044471LL };
|                                ^~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:74:32: warning: 'dc_fixpt_e' defined but not used [-Wunused-const-variable=]
74 | static const struct fixed31_32 dc_fixpt_e = { 11674931555LL };
|                                ^~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:73:32: warning: 'dc_fixpt_two_pi' defined but not used [-Wunused-const-variable=]
73 | static const struct fixed31_32 dc_fixpt_two_pi = { 26986075409LL };
|                                ^~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:72:32: warning: 'dc_fixpt_pi' defined but not used [-Wunused-const-variable=]
72 | static const struct fixed31_32 dc_fixpt_pi = { 13493037705LL };
|                                ^~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:67:32: warning: 'dc_fixpt_zero' defined but not used [-Wunused-const-variable=]
67 | static const struct fixed31_32 dc_fixpt_zero = { 0 };
|                                ^~~~~~~~~~~~~

vim +/for_each_sgtable_sg +480 drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.c

   444	
   445	/**
   446	 * amdgpu_vram_mgr_alloc_sgt - allocate and fill a sg table
   447	 *
   448	 * @adev: amdgpu device pointer
   449	 * @mem: TTM memory object
   450	 * @dev: the other device
   451	 * @dir: dma direction
   452	 * @sgt: resulting sg table
   453	 *
   454	 * Allocate and fill a sg table from a VRAM allocation.
   455	 */
   456	int amdgpu_vram_mgr_alloc_sgt(struct amdgpu_device *adev,
   457				      struct ttm_mem_reg *mem,
   458				      struct device *dev,
   459				      enum dma_data_direction dir,
   460				      struct sg_table **sgt)
   461	{
   462		struct drm_mm_node *node;
   463		struct scatterlist *sg;
   464		int num_entries = 0;
   465		unsigned int pages;
   466		int i, r;
   467	
   468		*sgt = kmalloc(sizeof(*sg), GFP_KERNEL);
   469		if (!*sgt)
   470			return -ENOMEM;
   471	
   472		for (pages = mem->num_pages, node = mem->mm_node;
   473		     pages; pages -= node->size, ++node)
   474			++num_entries;
   475	
   476		r = sg_alloc_table(*sgt, num_entries, GFP_KERNEL);
   477		if (r)
   478			goto error_free;
   479	
 > 480		for_each_sgtable_sg(*sgt, sg, i)
   481			sg->length = 0;
   482	
   483		node = mem->mm_node;
   484		for_each_sgtable_sg(*sgt, sg, i) {
   485			phys_addr_t phys = (node->start << PAGE_SHIFT) +
   486				adev->gmc.aper_base;
   487			size_t size = node->size << PAGE_SHIFT;
   488			dma_addr_t addr;
   489	
   490			++node;
   491			addr = dma_map_resource(dev, phys, size, dir,
   492						DMA_ATTR_SKIP_CPU_SYNC);
   493			r = dma_mapping_error(dev, addr);
   494			if (r)
   495				goto error_unmap;
   496	
   497			sg_set_page(sg, NULL, size, 0);
   498			sg_dma_address(sg) = addr;
   499			sg_dma_len(sg) = size;
   500		}
   501		return 0;
   502	
   503	error_unmap:
   504		for_each_sgtable_sg(*sgt, sg, i) {
   505			if (!sg->length)
   506				continue;
   507	
   508			dma_unmap_resource(dev, sg->dma_address,
   509					   sg->length, dir,
   510					   DMA_ATTR_SKIP_CPU_SYNC);
   511		}
   512		sg_free_table(*sgt);
   513	
   514	error_free:
   515		kfree(*sgt);
   516		return r;
   517	}
   518	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 65125 bytes --]

  reply	other threads:[~2020-06-18 22:29 UTC|newest]

Thread overview: 198+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20200618154014eucas1p236960ab27d628f94d68a6b8ddb8b07ff@eucas1p2.samsung.com>
2020-06-18 15:39 ` [PATCH v6 00/36] DRM: fix struct sg_table nents vs. orig_nents misuse Marek Szyprowski
2020-06-18 15:39   ` Marek Szyprowski
2020-06-18 15:39   ` Marek Szyprowski
2020-06-18 15:39   ` Marek Szyprowski
     [not found]   ` <CGME20200618154014eucas1p12812b08c65f53bb216f8ac8751a309de@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 01/36] drm: prime: add common helper to check scatterlist contiguity Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 16:07       ` Robin Murphy
2020-06-18 16:07         ` Robin Murphy
2020-06-18 16:07         ` Robin Murphy
2020-06-18 16:07         ` Robin Murphy
     [not found]   ` <CGME20200618154015eucas1p24598496fde5e7ae9039095f3cd6677b1@eucas1p2.samsung.com>
2020-06-18 15:39     ` [PATCH v6 02/36] drm: prime: use sgtable iterators in drm_prime_sg_to_page_addr_arrays() Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154016eucas1p1bd6cf758a2fe10a7c2e819b242af474f@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 03/36] drm: core: fix common struct sg_table related issues Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154016eucas1p12cda9c412f9891f191cb9e997be9da26@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 04/36] drm: amdgpu: " Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 21:32       ` kernel test robot [this message]
2020-06-18 21:32         ` kernel test robot
2020-06-18 21:32         ` kernel test robot
2020-06-18 21:32         ` kernel test robot
2020-06-18 21:32         ` kernel test robot
     [not found]   ` <CGME20200618154017eucas1p25f266fbeb2273d9ed01b5196d698ad48@eucas1p2.samsung.com>
2020-06-18 15:39     ` [PATCH v6 05/36] drm: armada: " Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154018eucas1p1037a99bc0dc24e0ba61242e7b34c5818@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 06/36] drm: etnaviv: " Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154018eucas1p259b2d1c250b2078772b091212325f93e@eucas1p2.samsung.com>
2020-06-18 15:39     ` [PATCH v6 07/36] drm: exynos: use common helper for a scatterlist contiguity check Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154019eucas1p256a859cb114401d51bd06d521619c9b3@eucas1p2.samsung.com>
2020-06-18 15:39     ` [PATCH v6 08/36] drm: exynos: fix common struct sg_table related issues Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154020eucas1p2b1cc0b386396bd09b735cc9d06906082@eucas1p2.samsung.com>
2020-06-18 15:39     ` [PATCH v6 09/36] drm: i915: " Marek Szyprowski
2020-06-18 15:39       ` [Intel-gfx] " Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154020eucas1p2d823db666c8706f63ed352fee3c3c90c@eucas1p2.samsung.com>
2020-06-18 15:39     ` [PATCH v6 10/36] drm: lima: " Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154021eucas1p181a432ec3a813134f677263ed45f9729@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 11/36] drm: mediatek: use common helper for a scatterlist contiguity check Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154022eucas1p1a8136b9677ac6a98ac47a3154ab0c763@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 12/36] drm: mediatek: use common helper for extracting pages array Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154023eucas1p1613c9cd68f360fdcdaed7adf9d5abf93@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 13/36] drm: msm: fix common struct sg_table related issues Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154023eucas1p15053efd9e4d2732b047d2a1cdda7eddb@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 14/36] drm: omapdrm: use common helper for extracting pages array Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154024eucas1p103fa1a3752801874ae883d366639f233@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 15/36] drm: omapdrm: fix common struct sg_table related issues Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154024eucas1p2e093781df622f8326297518f4eacd2fe@eucas1p2.samsung.com>
2020-06-18 15:39     ` [PATCH v6 16/36] drm: panfrost: " Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154025eucas1p1cf27282556c145b4a59527141a340574@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 17/36] drm: radeon: " Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154026eucas1p27589d4e89563b89eb27459cf9743c7b4@eucas1p2.samsung.com>
2020-06-18 15:39     ` [PATCH v6 18/36] drm: rockchip: use common helper for a scatterlist contiguity check Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154027eucas1p14806dddf83e91e2e5e24d3dd4ca2fc7e@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 19/36] drm: rockchip: fix common struct sg_table related issues Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154028eucas1p140cfc1156ef012ba74f97c5a2a7dc09e@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 21/36] drm: v3d: " Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 22:28       ` kernel test robot
2020-06-18 22:28         ` kernel test robot
2020-06-18 22:28         ` kernel test robot
2020-06-18 22:28         ` kernel test robot
2020-06-18 22:28         ` kernel test robot
     [not found]   ` <CGME20200618154029eucas1p17fb1ca5aa5a7e12fbffd1ddb15632340@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 22/36] drm: virtio: " Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154029eucas1p274f275e89dc985634bbd309823ad0f0d@eucas1p2.samsung.com>
2020-06-18 15:39     ` [PATCH v6 23/36] drm: vmwgfx: " Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-19  3:05       ` kernel test robot
2020-06-19  3:05         ` kernel test robot
2020-06-19  3:05         ` kernel test robot
2020-06-19  3:05         ` kernel test robot
2020-06-19  4:59       ` kernel test robot
2020-06-19  4:59         ` kernel test robot
2020-06-19  4:59         ` kernel test robot
2020-06-19  4:59         ` kernel test robot
     [not found]   ` <CGME20200618154030eucas1p2f36e6ec52cea051fccedb1970f27bef9@eucas1p2.samsung.com>
2020-06-18 15:39     ` [PATCH v6 24/36] xen: gntdev: " Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154032eucas1p25df137bd9c481bcbc39320f0167b225a@eucas1p2.samsung.com>
2020-06-18 15:39     ` [PATCH v6 26/36] drm: rcar-du: " Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154032eucas1p207c05c83d16e48c5a48ebd1e7d2862d1@eucas1p2.samsung.com>
2020-06-18 15:39     ` [PATCH v6 27/36] dmabuf: " Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154033eucas1p1d061fbc72e2eed8d475ab170f9a2fbf0@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 28/36] staging: ion: remove dead code Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154034eucas1p1f76546f76920c48a8407bb6737a41fb8@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 29/36] staging: ion: fix common struct sg_table related issues Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154027eucas1p2aad00de9752e396ee41babaf78285e68@eucas1p2.samsung.com>
     [not found]     ` <20200618153956.29558-1-m.szyprowski-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2020-06-18 15:39       ` [PATCH v6 20/36] drm: tegra: " Marek Szyprowski
2020-06-18 15:39         ` Marek Szyprowski
2020-06-18 15:39         ` Marek Szyprowski
2020-06-18 15:39         ` Marek Szyprowski
2020-06-18 15:39         ` Marek Szyprowski
2020-06-18 15:39       ` [PATCH v6 25/36] drm: host1x: " Marek Szyprowski
2020-06-18 15:39         ` Marek Szyprowski
2020-06-18 15:39         ` Marek Szyprowski
2020-06-18 15:39         ` Marek Szyprowski
2020-06-18 15:39         ` Marek Szyprowski
2020-06-18 15:39       ` [PATCH v6 30/36] staging: tegra-vde: " Marek Szyprowski
2020-06-18 15:39         ` Marek Szyprowski
2020-06-18 15:39         ` Marek Szyprowski
2020-06-18 15:39         ` Marek Szyprowski
2020-06-18 15:39         ` Marek Szyprowski
2020-06-18 15:39         ` Marek Szyprowski
     [not found]   ` <CGME20200618154036eucas1p2f4ba8a422fcf2843627d639cd193c90f@eucas1p2.samsung.com>
2020-06-18 15:39     ` [PATCH v6 31/36] misc: fastrpc: " Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154036eucas1p2d98ca6915b554409e1f02114657680c0@eucas1p2.samsung.com>
2020-06-18 15:39     ` [PATCH v6 32/36] rapidio: " Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 23:39       ` kernel test robot
2020-06-18 23:39         ` kernel test robot
2020-06-18 23:39         ` kernel test robot
2020-06-18 23:39         ` kernel test robot
     [not found]   ` <CGME20200618154037eucas1p19a60af169ef9c272b9d1eecf589f6627@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 33/36] samples: vfio-mdev/mbochs: " Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154038eucas1p18eae40b8fbf97a3e42abef8eb14da946@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 34/36] media: pci: fix common ALSA DMA-mapping related codes Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
     [not found]   ` <CGME20200618154038eucas1p1acd4fcdd183de4c19c4004778527a755@eucas1p1.samsung.com>
2020-06-18 15:39     ` [PATCH v6 35/36] videobuf2: use sgtable-based scatterlist wrappers Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-18 15:39       ` Marek Szyprowski
2020-06-19  0:34       ` kernel test robot
2020-06-19  0:34         ` kernel test robot
2020-06-19  0:34         ` kernel test robot
2020-06-19  0:34         ` kernel test robot
2020-06-19  9:43       ` Robin Murphy
2020-06-19  9:43         ` Robin Murphy
2020-06-19  9:43         ` Robin Murphy
2020-06-19  9:43         ` Robin Murphy
     [not found]   ` <CGME20200618160120eucas1p20b771c3b6dc06549c7f4a4d569c3e0ec@eucas1p2.samsung.com>
2020-06-18 16:01     ` [PATCH v6 36/36] drm: xen: fix common struct sg_table related issues Marek Szyprowski
2020-06-18 16:01       ` Marek Szyprowski
2020-06-18 16:01       ` Marek Szyprowski
2020-06-18 16:01       ` Marek Szyprowski
2020-06-18 16:01       ` Marek Szyprowski

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=202006190540.nUhRBknR%lkp@intel.com \
    --to=lkp@intel.com \
    --cc=airlied@linux.ie \
    --cc=b.zolnierkie@samsung.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=hch@lst.de \
    --cc=iommu@lists.linux-foundation.org \
    --cc=kbuild-all@lists.01.org \
    --cc=linaro-mm-sig@lists.linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=m.szyprowski@samsung.com \
    --cc=robin.murphy@arm.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.