[radeon-alex:upstream-4.14-drm-next-amd-dc-staging-chrome 4/16] drivers/gpu//drm/ttm/ttm_page_alloc.c:923:5: error: redefinition of 'ttm_populate_and_map_pages'

Tom St Denis tom.stdenis at amd.com
Tue Nov 14 11:28:48 UTC 2017


Is this:

commit 7a9667ae197460e6c9c3bb432fe68c708fce6259
Refs: v4.13-rc5-1195-g7a9667ae1974
Author:     Tom St Denis <tom.stdenis at amd.com>
AuthorDate: Tue Sep 5 07:30:59 2017 -0400
Commit:     Alex Deucher <alexander.deucher at amd.com>
CommitDate: Tue Sep 12 14:22:55 2017 -0400

     drm/ttm: Fix configuration error around populate_and_map() functions

     Fixed kbuild errors when IOMMU/SWIOTLB are disabled.

     Signed-off-by: Tom St Denis <tom.stdenis at amd.com>
     Reviewed-by: Christian König <christian.koenig at amd.com>
     Signed-off-by: Alex Deucher <alexander.deucher at amd.com>

Not part of this series because we literally went through this before :-)

Tom


On 13/11/17 05:25 PM, kbuild test robot wrote:
> tree:   git://people.freedesktop.org/~agd5f/linux.git upstream-4.14-drm-next-amd-dc-staging-chrome
> head:   4448b9a68413462529d018050cd246bc33957bd6
> commit: ed285b98008b667978d7faf348a22000b8a1c6b9 [4/16] drm/ttm: Add helper functions to populate/map in one call (v2)
> config: i386-randconfig-s0-201746 (attached as .config)
> compiler: gcc-6 (Debian 6.4.0-9) 6.4.0 20171026
> reproduce:
>          git checkout ed285b98008b667978d7faf348a22000b8a1c6b9
>          # save the attached .config to linux build tree
>          make ARCH=i386
> 
> All errors (new ones prefixed by >>):
> 
>>> drivers/gpu//drm/ttm/ttm_page_alloc.c:923:5: error: redefinition of 'ttm_populate_and_map_pages'
>      int ttm_populate_and_map_pages(struct device *dev, struct ttm_dma_tt *tt)
>          ^~~~~~~~~~~~~~~~~~~~~~~~~~
>     In file included from drivers/gpu//drm/ttm/ttm_page_alloc.c:49:0:
>     include/drm/ttm/ttm_page_alloc.h:120:19: note: previous definition of 'ttm_populate_and_map_pages' was here
>      static inline int ttm_populate_and_map_pages(struct device *dev, struct ttm_dma_tt *tt)
>                        ^~~~~~~~~~~~~~~~~~~~~~~~~~
>>> drivers/gpu//drm/ttm/ttm_page_alloc.c:950:6: error: redefinition of 'ttm_unmap_and_unpopulate_pages'
>      void ttm_unmap_and_unpopulate_pages(struct device *dev, struct ttm_dma_tt *tt)
>           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>     In file included from drivers/gpu//drm/ttm/ttm_page_alloc.c:49:0:
>     include/drm/ttm/ttm_page_alloc.h:125:20: note: previous definition of 'ttm_unmap_and_unpopulate_pages' was here
>      static inline void ttm_unmap_and_unpopulate_pages(struct device *dev, struct ttm_dma_tt *tt)
>                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 
> vim +/ttm_populate_and_map_pages +923 drivers/gpu//drm/ttm/ttm_page_alloc.c
> 
>     922	
>   > 923	int ttm_populate_and_map_pages(struct device *dev, struct ttm_dma_tt *tt)
>     924	{
>     925		unsigned i;
>     926		int r;
>     927	
>     928		r = ttm_pool_populate(&tt->ttm);
>     929		if (r)
>     930			return r;
>     931	
>     932		for (i = 0; i < tt->ttm.num_pages; i++) {
>     933			tt->dma_address[i] = dma_map_page(dev, tt->ttm.pages[i],
>     934							  0, PAGE_SIZE,
>     935							  DMA_BIDIRECTIONAL);
>     936			if (dma_mapping_error(dev, tt->dma_address[i])) {
>     937				while (i--) {
>     938					dma_unmap_page(dev, tt->dma_address[i],
>     939						       PAGE_SIZE, DMA_BIDIRECTIONAL);
>     940					tt->dma_address[i] = 0;
>     941				}
>     942				ttm_pool_unpopulate(&tt->ttm);
>     943				return -EFAULT;
>     944			}
>     945		}
>     946		return 0;
>     947	}
>     948	EXPORT_SYMBOL(ttm_populate_and_map_pages);
>     949	
>   > 950	void ttm_unmap_and_unpopulate_pages(struct device *dev, struct ttm_dma_tt *tt)
>     951	{
>     952		unsigned i;
>     953		
>     954		for (i = 0; i < tt->ttm.num_pages; i++) {
>     955			if (tt->dma_address[i]) {
>     956				dma_unmap_page(dev, tt->dma_address[i],
>     957					       PAGE_SIZE, DMA_BIDIRECTIONAL);
>     958			}
>     959		}
>     960		ttm_pool_unpopulate(&tt->ttm);
>     961	}
>     962	EXPORT_SYMBOL(ttm_unmap_and_unpopulate_pages);
>     963	
> 
> ---
> 0-DAY kernel test infrastructure                Open Source Technology Center
> https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
> 



More information about the dri-devel mailing list