drm/amdgpu: implement cgs gpu memory callbacks
Zhou, David(ChunMing)
David1.Zhou at amd.com
Mon Aug 24 00:09:15 PDT 2015
Hi Dan,
Thanks for figuring out that.
> 274 min_offset = obj->placements[0].fpfn << PAGE_SHIFT;
> 275 max_offset = obj->placements[0].lpfn << PAGE_SHIFT;
Maybe should be:
min_offset = obj->placements[0].fpfn;
min_offset <<= PAGE_SHIFT;
max_offset = obj->placements[0].lpfn;
max_offset <<= PAGE_SHIFT;
Regards,
David Zhou
> -----Original Message-----
> From: Dan Carpenter [mailto:dan.carpenter at oracle.com]
> Sent: Saturday, August 22, 2015 12:24 AM
> To: Zhou, David(ChunMing)
> Cc: dri-devel at lists.freedesktop.org
> Subject: re: drm/amdgpu: implement cgs gpu memory callbacks
>
> Hello Chunming Zhou,
>
> The patch 57ff96cf471a: "drm/amdgpu: implement cgs gpu memory callbacks"
> from Apr 24, 2015, leads to the following static checker
> warning:
>
> drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c:274
> amdgpu_cgs_gmap_gpu_mem()
> warn: should 'obj->placements[0]->fpfn << 12' be a 64 bit type?
>
> drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c:275
> amdgpu_cgs_gmap_gpu_mem()
> warn: should 'obj->placements[0]->lpfn << 12' be a 64 bit type?
>
>
> drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
> 265 static int amdgpu_cgs_gmap_gpu_mem(void *cgs_device, cgs_handle_t
> handle,
> 266 uint64_t *mcaddr)
> 267 {
> 268 int r;
> 269 u64 min_offset, max_offset;
> 270 struct amdgpu_bo *obj = (struct amdgpu_bo *)handle;
> 271
> 272 WARN_ON_ONCE(obj->placement.num_placement > 1);
> 273
> 274 min_offset = obj->placements[0].fpfn << PAGE_SHIFT;
> 275 max_offset = obj->placements[0].lpfn << PAGE_SHIFT;
>
> Both of these.
>
> 276
> 277 r = amdgpu_bo_reserve(obj, false);
> 278 if (unlikely(r != 0))
> 279 return r;
> 280 r = amdgpu_bo_pin_restricted(obj, AMDGPU_GEM_DOMAIN_GTT,
> 281 min_offset, max_offset, mcaddr);
> 282 amdgpu_bo_unreserve(obj);
> 283 return r;
> 284 }
>
> There are actually a few of these warnings which were less clear whether the
> warning was correct or not so I didn't send them.
>
> drivers/gpu/drm/amd/amdgpu/cz_smc.c:463
> cz_smu_populate_single_firmware_entry() warn: should '((header->jt_offset))
> << 2' be a 64 bit type?
> drivers/gpu/drm/amd/amdgpu/fiji_smc.c:404
> fiji_smu_populate_single_firmware_entry() warn: should '((header->jt_offset))
> << 2' be a 64 bit type?
> drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c:724
> amdgpu_cgs_get_firmware_info() warn: should '((header->jt_offset)) << 2' be a
> 64 bit type?
> drivers/gpu/drm/amd/amdgpu/tonga_smc.c:406
> tonga_smu_populate_single_firmware_entry() warn: should '((header-
> >jt_offset)) << 2' be a 64 bit type?
> drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c:615 amdgpu_gem_op_ioctl()
> warn: should 'robj->tbo.mem.page_alignment << 12' be a 64 bit type?
>
> regards,
> dan carpenter
More information about the dri-devel
mailing list