[radeon-alex:amd-staging-drm-next 1458/1474] drivers/gpu//drm/amd/amdgpu/amdgpu_gart.c:73:6: error: passing argument 6 of 'amdgpu_bo_create_kernel' from incompatible pointer type

kbuild test robot fengguang.wu at intel.com
Thu Nov 16 17:27:04 UTC 2017


tree:   git://people.freedesktop.org/~agd5f/linux.git amd-staging-drm-next
head:   be1e8b7c9bbedf5963f9573bcd9cb9ba5046c50d
commit: 1cfd8e237f0318e330190ac21d63c58ae6a1f66c [1458/1474] drm/amdgpu:cleanup GMC & gart garbage function
config: i386-randconfig-s0-201746 (attached as .config)
compiler: gcc-6 (Debian 6.4.0-9) 6.4.0 20171026
reproduce:
        git checkout 1cfd8e237f0318e330190ac21d63c58ae6a1f66c
        # save the attached .config to linux build tree
        make ARCH=i386 

All errors (new ones prefixed by >>):

   drivers/gpu//drm/amd/amdgpu/amdgpu_gart.c: In function 'amdgpu_gart_table_vram_alloc':
>> drivers/gpu//drm/amd/amdgpu/amdgpu_gart.c:73:6: error: passing argument 6 of 'amdgpu_bo_create_kernel' from incompatible pointer type [-Werror=incompatible-pointer-types]
         &adev->gart.table_addr, &adev->gart.ptr);
         ^
   In file included from drivers/gpu//drm/amd/amdgpu/amdgpu.h:1946:0,
                    from drivers/gpu//drm/amd/amdgpu/amdgpu_gart.c:33:
   drivers/gpu//drm/amd/amdgpu/amdgpu_object.h:215:5: note: expected 'u64 * {aka long long unsigned int *}' but argument is of type 'dma_addr_t * {aka unsigned int *}'
    int amdgpu_bo_create_kernel(struct amdgpu_device *adev,
        ^~~~~~~~~~~~~~~~~~~~~~~
   drivers/gpu//drm/amd/amdgpu/amdgpu_gart.c: In function 'amdgpu_gart_table_vram_free':
>> drivers/gpu//drm/amd/amdgpu/amdgpu_gart.c:88:5: error: passing argument 2 of 'amdgpu_bo_free_kernel' from incompatible pointer type [-Werror=incompatible-pointer-types]
        &adev->gart.table_addr,
        ^
   In file included from drivers/gpu//drm/amd/amdgpu/amdgpu.h:1946:0,
                    from drivers/gpu//drm/amd/amdgpu/amdgpu_gart.c:33:
   drivers/gpu//drm/amd/amdgpu/amdgpu_object.h:219:6: note: expected 'u64 * {aka long long unsigned int *}' but argument is of type 'dma_addr_t * {aka unsigned int *}'
    void amdgpu_bo_free_kernel(struct amdgpu_bo **bo, u64 *gpu_addr,
         ^~~~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors

vim +/amdgpu_bo_create_kernel +73 drivers/gpu//drm/amd/amdgpu/amdgpu_gart.c

    34	
    35	/*
    36	 * GART
    37	 * The GART (Graphics Aperture Remapping Table) is an aperture
    38	 * in the GPU's address space.  System pages can be mapped into
    39	 * the aperture and look like contiguous pages from the GPU's
    40	 * perspective.  A page table maps the pages in the aperture
    41	 * to the actual backing pages in system memory.
    42	 *
    43	 * Radeon GPUs support both an internal GART, as described above,
    44	 * and AGP.  AGP works similarly, but the GART table is configured
    45	 * and maintained by the northbridge rather than the driver.
    46	 * Radeon hw has a separate AGP aperture that is programmed to
    47	 * point to the AGP aperture provided by the northbridge and the
    48	 * requests are passed through to the northbridge aperture.
    49	 * Both AGP and internal GART can be used at the same time, however
    50	 * that is not currently supported by the driver.
    51	 *
    52	 * This file handles the common internal GART management.
    53	 */
    54	
    55	/*
    56	 * Common GART table functions.
    57	 */
    58	
    59	/**
    60	 * amdgpu_gart_table_vram_alloc - allocate vram for gart page table
    61	 *
    62	 * @adev: amdgpu_device pointer
    63	 *
    64	 * Allocate video memory for GART page table
    65	 * (pcie r4xx, r5xx+).  These asics require the
    66	 * gart table to be in video memory.
    67	 * Returns 0 for success, error for failure.
    68	 */
    69	int amdgpu_gart_table_vram_alloc(struct amdgpu_device *adev)
    70	{
    71		return amdgpu_bo_create_kernel(adev, adev->gart.table_size, PAGE_SIZE,
    72						AMDGPU_GEM_DOMAIN_VRAM, &adev->gart.robj,
  > 73						&adev->gart.table_addr, &adev->gart.ptr);
    74	}
    75	
    76	/**
    77	 * amdgpu_gart_table_vram_free - free gart page table vram
    78	 *
    79	 * @adev: amdgpu_device pointer
    80	 *
    81	 * Free the video memory used for the GART page table
    82	 * (pcie r4xx, r5xx+).  These asics require the gart table to
    83	 * be in video memory.
    84	 */
    85	void amdgpu_gart_table_vram_free(struct amdgpu_device *adev)
    86	{
    87		amdgpu_bo_free_kernel(&adev->gart.robj,
  > 88					&adev->gart.table_addr,
    89					&adev->gart.ptr);
    90	}
    91	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 31131 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20171117/424e6583/attachment-0001.gz>


More information about the dri-devel mailing list