Re: [PATCH] drm/amd/amdgpu: Properly tune the size of struct

From: kernel test robot
Date: Fri Jun 23 2023 - 01:46:44 EST


Hi Su,

kernel test robot noticed the following build warnings:

[auto build test WARNING on drm-misc/drm-misc-next]
[also build test WARNING on linus/master v6.4-rc7 next-20230622]
[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#_base_tree_information]

url: https://github.com/intel-lab-lkp/linux/commits/Su-Hui/drm-amd-amdgpu-Properly-tune-the-size-of-struct/20230620-130013
base: git://anongit.freedesktop.org/drm/drm-misc drm-misc-next
patch link: https://lore.kernel.org/r/20230620045919.492128-1-suhui%40nfschina.com
patch subject: [PATCH] drm/amd/amdgpu: Properly tune the size of struct
config: microblaze-randconfig-s032-20230622 (https://download.01.org/0day-ci/archive/20230623/202306231320.jElZhRjj-lkp@xxxxxxxxx/config)
compiler: microblaze-linux-gcc (GCC) 12.3.0
reproduce: (https://download.01.org/0day-ci/archive/20230623/202306231320.jElZhRjj-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202306231320.jElZhRjj-lkp@xxxxxxxxx/

sparse warnings: (new ones prefixed by >>)
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:579:42: sparse: sparse: cast removes address space '__iomem' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2347:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2347:21: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2347:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__gu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2347:21: sparse: expected unsigned int const [noderef] __user *__gu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:2347:21: sparse: got unsigned int [usertype] *
--
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:153:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:153:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:153:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:153:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *__pu_addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:153:29: sparse: expected unsigned int [noderef] __user *__pu_addr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:153:29: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:153:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:153:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:155:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:155:29: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:155:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__gu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:155:29: sparse: expected unsigned int const [noderef] __user *__gu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:155:29: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:282:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:282:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:282:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:282:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *__pu_addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:282:29: sparse: expected unsigned int [noderef] __user *__pu_addr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:282:29: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:282:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:282:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:284:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:284:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:284:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__gu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:284:29: sparse: expected unsigned int const [noderef] __user *__gu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:284:29: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:330:46: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got struct amdgpu_debugfs_regs2_iocdata_v2 * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:330:46: sparse: expected void const [noderef] __user *from
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:330:46: sparse: got struct amdgpu_debugfs_regs2_iocdata_v2 *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:336:47: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got struct amdgpu_debugfs_regs2_iocdata * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:336:47: sparse: expected void const [noderef] __user *from
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:336:47: sparse: got struct amdgpu_debugfs_regs2_iocdata *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:460:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:460:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:460:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:460:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *__pu_addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:460:21: sparse: expected unsigned int [noderef] __user *__pu_addr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:460:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:460:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:460:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:488:37: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got struct amdgpu_debugfs_gprwave_iocdata * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:488:37: sparse: expected void const [noderef] __user *from
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:488:37: sparse: got struct amdgpu_debugfs_gprwave_iocdata *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:543:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:543:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:543:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:543:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *__pu_addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:543:21: sparse: expected unsigned int [noderef] __user *__pu_addr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:543:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:543:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:543:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:598:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:598:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:598:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__gu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:598:21: sparse: expected unsigned int const [noderef] __user *__gu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:598:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:656:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:656:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:656:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:656:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *__pu_addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:656:21: sparse: expected unsigned int [noderef] __user *__pu_addr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:656:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:656:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:656:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:711:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:711:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:711:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__gu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:711:21: sparse: expected unsigned int const [noderef] __user *__gu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:711:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:769:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:769:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:769:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:769:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *__pu_addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:769:21: sparse: expected unsigned int [noderef] __user *__pu_addr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:769:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:769:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:769:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:824:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:824:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:824:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__gu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:824:21: sparse: expected unsigned int const [noderef] __user *__gu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:824:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:925:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:925:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:925:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:925:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *__pu_addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:925:21: sparse: expected unsigned int [noderef] __user *__pu_addr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:925:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:925:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:925:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1003:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1003:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1003:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1003:29: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected signed int [noderef] __user *__pu_addr @@ got signed int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1003:29: sparse: expected signed int [noderef] __user *__pu_addr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1003:29: sparse: got signed int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1003:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1003:29: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1089:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1089:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1089:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1089:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *__pu_addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1089:21: sparse: expected unsigned int [noderef] __user *__pu_addr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1089:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1089:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1089:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1182:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1182:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1182:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1182:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *__pu_addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1182:21: sparse: expected unsigned int [noderef] __user *__pu_addr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1182:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1182:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1182:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1237:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1237:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1237:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1237:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int [noderef] __user *__pu_addr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1237:21: sparse: expected unsigned int [noderef] __user *__pu_addr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1237:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1237:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1237:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1284:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1284:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1284:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__gu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1284:21: sparse: expected unsigned int const [noderef] __user *__gu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1284:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1336:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1336:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1336:21: sparse: sparse: cast removes address space '__user' of expression
>> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1336:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned long long [noderef] __user *__pu_addr @@ got unsigned long long [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1336:21: sparse: expected unsigned long long [noderef] __user *__pu_addr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1336:21: sparse: got unsigned long long [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1336:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1336:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1383:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1383:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1383:21: sparse: sparse: incorrect type in initializer (different address spaces) @@ expected unsigned int const [noderef] __user *__gu_ptr @@ got unsigned int [usertype] * @@
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1383:21: sparse: expected unsigned int const [noderef] __user *__gu_ptr
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1383:21: sparse: got unsigned int [usertype] *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1431:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1431:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1431:21: sparse: sparse: cast removes address space '__user' of expression
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1431:21: sparse: sparse: too many warnings
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1808:25: sparse: sparse: incompatible types in comparison expression (different address spaces):
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1808:25: sparse: struct dma_fence [noderef] __rcu *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1808:25: sparse: struct dma_fence *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1809:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1809:17: sparse: struct dma_fence [noderef] __rcu *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1809:17: sparse: struct dma_fence *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1868:17: sparse: sparse: incompatible types in comparison expression (different address spaces):
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1868:17: sparse: struct dma_fence [noderef] __rcu *
drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c:1868:17: sparse: struct dma_fence *
--
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:479:34: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [addressable] [assigned] [usertype] pixclk_100hz @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:479:34: sparse: expected unsigned int [addressable] [assigned] [usertype] pixclk_100hz
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:479:34: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:575:23: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] h_size @@ got restricted __le16 [usertype] @@
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:575:23: sparse: expected unsigned short [assigned] [usertype] h_size
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:575:23: sparse: got restricted __le16 [usertype]
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:577:32: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] h_blanking_time @@ got restricted __le16 [usertype] @@
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:577:32: sparse: expected unsigned short [assigned] [usertype] h_blanking_time
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:577:32: sparse: got restricted __le16 [usertype]
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:581:23: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] v_size @@ got restricted __le16 [usertype] @@
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:581:23: sparse: expected unsigned short [assigned] [usertype] v_size
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:581:23: sparse: got restricted __le16 [usertype]
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:583:32: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] v_blanking_time @@ got restricted __le16 [usertype] @@
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:583:32: sparse: expected unsigned short [assigned] [usertype] v_blanking_time
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:583:32: sparse: got restricted __le16 [usertype]
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:590:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] h_syncoffset @@ got restricted __le16 [usertype] @@
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:590:29: sparse: expected unsigned short [assigned] [usertype] h_syncoffset
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:590:29: sparse: got restricted __le16 [usertype]
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:593:28: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] h_syncwidth @@ got restricted __le16 [usertype] @@
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:593:28: sparse: expected unsigned short [assigned] [usertype] h_syncwidth
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:593:28: sparse: got restricted __le16 [usertype]
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:598:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] v_syncoffset @@ got restricted __le16 [usertype] @@
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:598:29: sparse: expected unsigned short [assigned] [usertype] v_syncoffset
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:598:29: sparse: got restricted __le16 [usertype]
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:601:28: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] v_syncwidth @@ got restricted __le16 [usertype] @@
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:601:28: sparse: expected unsigned short [assigned] [usertype] v_syncwidth
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:601:28: sparse: got restricted __le16 [usertype]
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:610:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:610:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:610:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:610:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:610:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:610:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:610:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:610:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:610:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:610:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:610:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:610:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:610:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:610:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:610:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:610:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:609:37: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] modemiscinfo @@ got restricted __le16 [usertype] @@
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:609:37: sparse: expected unsigned short [assigned] [usertype] modemiscinfo
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:609:37: sparse: got restricted __le16 [usertype]
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:615:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:615:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:615:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:615:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:615:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:615:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:615:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:615:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:615:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:615:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:615:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:615:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:615:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:615:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:615:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:615:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:614:37: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] modemiscinfo @@ got restricted __le16 [usertype] @@
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:614:37: sparse: expected unsigned short [assigned] [usertype] modemiscinfo
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:614:37: sparse: got restricted __le16 [usertype]
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:620:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:620:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:620:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:620:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:620:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:620:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:620:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:620:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:620:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:620:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:620:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:620:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:620:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:620:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:620:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:620:33: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:619:37: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] modemiscinfo @@ got restricted __le16 [usertype] @@
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:619:37: sparse: expected unsigned short [assigned] [usertype] modemiscinfo
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:619:37: sparse: got restricted __le16 [usertype]
>> drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:638:39: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected restricted __le16 [usertype] *var @@ got unsigned short * @@
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:638:39: sparse: expected restricted __le16 [usertype] *var
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:638:39: sparse: got unsigned short *
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:644:25: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:644:25: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:644:25: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:644:25: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:644:25: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:644:25: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:644:25: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:644:25: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:644:25: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:644:25: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:644:25: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:644:25: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:644:25: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:644:25: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:644:25: sparse: sparse: cast to restricted __le16
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:644:25: sparse: sparse: cast to restricted __le16
>> drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:643:37: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [addressable] [assigned] [usertype] modemiscinfo @@ got restricted __le16 [usertype] @@
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:643:37: sparse: expected unsigned short [addressable] [assigned] [usertype] modemiscinfo
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:643:37: sparse: got restricted __le16 [usertype]
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:915:43: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [addressable] [assigned] [usertype] dceclk_10khz @@ got restricted __le32 [usertype] @@
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:915:43: sparse: expected unsigned int [addressable] [assigned] [usertype] dceclk_10khz
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:915:43: sparse: got restricted __le32 [usertype]
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:924:53: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:924:53: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:924:53: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:924:53: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:924:53: sparse: sparse: cast to restricted __le32
drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.c:924:53: sparse: sparse: cast to restricted __le32

vim +2347 drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c

d38ceaf99ed015 Alex Deucher 2015-04-20 2322
75501872b4af93 Lee Jones 2020-11-12 2323 /*
50da51744f005f Tom St Denis 2018-05-09 2324 * amdgpu_ttm_vram_write - Linear write access to VRAM
50da51744f005f Tom St Denis 2018-05-09 2325 *
50da51744f005f Tom St Denis 2018-05-09 2326 * Accesses VRAM via MMIO for debugging purposes.
50da51744f005f Tom St Denis 2018-05-09 2327 */
08cab989f77582 Tom St Denis 2017-08-29 2328 static ssize_t amdgpu_ttm_vram_write(struct file *f, const char __user *buf,
08cab989f77582 Tom St Denis 2017-08-29 2329 size_t size, loff_t *pos)
08cab989f77582 Tom St Denis 2017-08-29 2330 {
08cab989f77582 Tom St Denis 2017-08-29 2331 struct amdgpu_device *adev = file_inode(f)->i_private;
08cab989f77582 Tom St Denis 2017-08-29 2332 ssize_t result = 0;
08cab989f77582 Tom St Denis 2017-08-29 2333 int r;
08cab989f77582 Tom St Denis 2017-08-29 2334
08cab989f77582 Tom St Denis 2017-08-29 2335 if (size & 0x3 || *pos & 0x3)
08cab989f77582 Tom St Denis 2017-08-29 2336 return -EINVAL;
08cab989f77582 Tom St Denis 2017-08-29 2337
770d13b19fdf36 Christian König 2018-01-12 2338 if (*pos >= adev->gmc.mc_vram_size)
08cab989f77582 Tom St Denis 2017-08-29 2339 return -ENXIO;
08cab989f77582 Tom St Denis 2017-08-29 2340
08cab989f77582 Tom St Denis 2017-08-29 2341 while (size) {
08cab989f77582 Tom St Denis 2017-08-29 2342 uint32_t value;
08cab989f77582 Tom St Denis 2017-08-29 2343
770d13b19fdf36 Christian König 2018-01-12 2344 if (*pos >= adev->gmc.mc_vram_size)
08cab989f77582 Tom St Denis 2017-08-29 2345 return result;
08cab989f77582 Tom St Denis 2017-08-29 2346
08cab989f77582 Tom St Denis 2017-08-29 @2347 r = get_user(value, (uint32_t *)buf);
08cab989f77582 Tom St Denis 2017-08-29 2348 if (r)
08cab989f77582 Tom St Denis 2017-08-29 2349 return r;
08cab989f77582 Tom St Denis 2017-08-29 2350
5fb95aa73f3c8d Kevin Wang 2021-07-15 2351 amdgpu_device_mm_access(adev, *pos, &value, 4, true);
08cab989f77582 Tom St Denis 2017-08-29 2352
08cab989f77582 Tom St Denis 2017-08-29 2353 result += 4;
08cab989f77582 Tom St Denis 2017-08-29 2354 buf += 4;
08cab989f77582 Tom St Denis 2017-08-29 2355 *pos += 4;
08cab989f77582 Tom St Denis 2017-08-29 2356 size -= 4;
08cab989f77582 Tom St Denis 2017-08-29 2357 }
08cab989f77582 Tom St Denis 2017-08-29 2358
08cab989f77582 Tom St Denis 2017-08-29 2359 return result;
08cab989f77582 Tom St Denis 2017-08-29 2360 }
08cab989f77582 Tom St Denis 2017-08-29 2361

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki