CC: [email protected]
CC: Linux Memory Management List <[email protected]>
TO: "Christian König" <[email protected]>
CC: Matthew Auld <[email protected]>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git 
master
head:   4238b1710eadd18dd16de0288a2bc5bb84614b4e
commit: d3116756a710e3cd51293a9d58b525957ab7e784 [5511/12271] drm/ttm: rename 
bo->mem and make it a pointer
:::::: branch date: 6 hours ago
:::::: commit date: 3 weeks ago
config: i386-randconfig-m021-20210622 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <[email protected]>
Reported-by: Dan Carpenter <[email protected]>

New smatch warnings:
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:1928 amdgpu_fill_buffer() warn: should 
'bo->tbo.resource->num_pages << 12' be a 64 bit type?

Old smatch warnings:
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:255 amdgpu_ttm_map_buffer() warn: 
should 'i << 12' be a 64 bit type?
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:388 amdgpu_move_blit() warn: should 
'new_mem->num_pages << 12' be a 64 bit type?
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:574 amdgpu_ttm_io_mem_reserve() warn: 
should 'mem->start << 12' be a 64 bit type?

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

d38ceaf99ed015 Alex Deucher    2015-04-20  1900  
59b4a97742888d Flora Cui       2016-07-19  1901  int amdgpu_fill_buffer(struct 
amdgpu_bo *bo,
44e1baeb6321fb Christian König 2018-01-24  1902                        uint32_t 
src_data,
52791eeec1d9f4 Christian König 2019-08-11  1903                        struct 
dma_resv *resv,
f54d1867005c33 Chris Wilson    2016-10-25  1904                        struct 
dma_fence **fence)
59b4a97742888d Flora Cui       2016-07-19  1905  {
a7d64de659946e Christian König 2016-09-15  1906         struct amdgpu_device 
*adev = amdgpu_ttm_adev(bo->tbo.bdev);
44e1baeb6321fb Christian König 2018-01-24  1907         uint32_t max_bytes = 
adev->mman.buffer_funcs->fill_max_bytes;
59b4a97742888d Flora Cui       2016-07-19  1908         struct amdgpu_ring 
*ring = adev->mman.buffer_funcs_ring;
59b4a97742888d Flora Cui       2016-07-19  1909  
596ee296849c40 Christian König 2021-02-17  1910         struct 
amdgpu_res_cursor cursor;
59b4a97742888d Flora Cui       2016-07-19  1911         unsigned int num_loops, 
num_dw;
596ee296849c40 Christian König 2021-02-17  1912         uint64_t num_bytes;
f29224a6197dc7 Christian König 2016-11-17  1913  
f29224a6197dc7 Christian König 2016-11-17  1914         struct amdgpu_job *job;
59b4a97742888d Flora Cui       2016-07-19  1915         int r;
59b4a97742888d Flora Cui       2016-07-19  1916  
81988f9c3d9907 Christian König 2018-03-01  1917         if 
(!adev->mman.buffer_funcs_enabled) {
f29224a6197dc7 Christian König 2016-11-17  1918                 
DRM_ERROR("Trying to clear memory with ring turned off.\n");
f29224a6197dc7 Christian König 2016-11-17  1919                 return -EINVAL;
f29224a6197dc7 Christian König 2016-11-17  1920         }
f29224a6197dc7 Christian König 2016-11-17  1921  
d3116756a710e3 Christian König 2021-04-12  1922         if 
(bo->tbo.resource->mem_type == TTM_PL_TT) {
c5835bbb119599 Christian König 2017-10-27  1923                 r = 
amdgpu_ttm_alloc_gart(&bo->tbo);
92c60d9cf6636f Christian König 2017-06-29  1924                 if (r)
92c60d9cf6636f Christian König 2017-06-29  1925                         return 
r;
92c60d9cf6636f Christian König 2017-06-29  1926         }
92c60d9cf6636f Christian König 2017-06-29  1927  
d3116756a710e3 Christian König 2021-04-12 @1928         num_bytes = 
bo->tbo.resource->num_pages << PAGE_SHIFT;
f29224a6197dc7 Christian König 2016-11-17  1929         num_loops = 0;
f29224a6197dc7 Christian König 2016-11-17  1930  
d3116756a710e3 Christian König 2021-04-12  1931         
amdgpu_res_first(bo->tbo.resource, 0, num_bytes, &cursor);
596ee296849c40 Christian König 2021-02-17  1932         while 
(cursor.remaining) {
596ee296849c40 Christian König 2021-02-17  1933                 num_loops += 
DIV_ROUND_UP_ULL(cursor.size, max_bytes);
596ee296849c40 Christian König 2021-02-17  1934                 
amdgpu_res_next(&cursor, cursor.size);
f29224a6197dc7 Christian König 2016-11-17  1935         }
44e1baeb6321fb Christian König 2018-01-24  1936         num_dw = num_loops * 
adev->mman.buffer_funcs->fill_num_dw;
59b4a97742888d Flora Cui       2016-07-19  1937  
59b4a97742888d Flora Cui       2016-07-19  1938         /* for IB padding */
f29224a6197dc7 Christian König 2016-11-17  1939         num_dw += 64;
59b4a97742888d Flora Cui       2016-07-19  1940  
9ecefb19c3a662 Christian König 2020-04-01  1941         r = 
amdgpu_job_alloc_with_ib(adev, num_dw * 4, AMDGPU_IB_POOL_DELAYED,
9ecefb19c3a662 Christian König 2020-04-01  1942                                 
     &job);
59b4a97742888d Flora Cui       2016-07-19  1943         if (r)
59b4a97742888d Flora Cui       2016-07-19  1944                 return r;
59b4a97742888d Flora Cui       2016-07-19  1945  
59b4a97742888d Flora Cui       2016-07-19  1946         if (resv) {
59b4a97742888d Flora Cui       2016-07-19  1947                 r = 
amdgpu_sync_resv(adev, &job->sync, resv,
5d3196605d00b5 Christian König 2019-12-16  1948                                 
     AMDGPU_SYNC_ALWAYS,
5d3196605d00b5 Christian König 2019-12-16  1949                                 
     AMDGPU_FENCE_OWNER_UNDEFINED);
59b4a97742888d Flora Cui       2016-07-19  1950                 if (r) {
59b4a97742888d Flora Cui       2016-07-19  1951                         
DRM_ERROR("sync failed (%d).\n", r);
59b4a97742888d Flora Cui       2016-07-19  1952                         goto 
error_free;
59b4a97742888d Flora Cui       2016-07-19  1953                 }
59b4a97742888d Flora Cui       2016-07-19  1954         }
59b4a97742888d Flora Cui       2016-07-19  1955  
d3116756a710e3 Christian König 2021-04-12  1956         
amdgpu_res_first(bo->tbo.resource, 0, num_bytes, &cursor);
596ee296849c40 Christian König 2021-02-17  1957         while 
(cursor.remaining) {
596ee296849c40 Christian König 2021-02-17  1958                 uint32_t 
cur_size = min_t(uint64_t, cursor.size, max_bytes);
596ee296849c40 Christian König 2021-02-17  1959                 uint64_t 
dst_addr = cursor.start;
f29224a6197dc7 Christian König 2016-11-17  1960  
d3116756a710e3 Christian König 2021-04-12  1961                 dst_addr += 
amdgpu_ttm_domain_start(adev,
d3116756a710e3 Christian König 2021-04-12  1962                                 
                    bo->tbo.resource->mem_type);
596ee296849c40 Christian König 2021-02-17  1963                 
amdgpu_emit_fill_buffer(adev, &job->ibs[0], src_data, dst_addr,
596ee296849c40 Christian König 2021-02-17  1964                                 
        cur_size);
59b4a97742888d Flora Cui       2016-07-19  1965  
596ee296849c40 Christian König 2021-02-17  1966                 
amdgpu_res_next(&cursor, cur_size);
f29224a6197dc7 Christian König 2016-11-17  1967         }
f29224a6197dc7 Christian König 2016-11-17  1968  
59b4a97742888d Flora Cui       2016-07-19  1969         
amdgpu_ring_pad_ib(ring, &job->ibs[0]);
59b4a97742888d Flora Cui       2016-07-19  1970         
WARN_ON(job->ibs[0].length_dw > num_dw);
0e28b10ff1b8e6 Christian König 2018-07-13  1971         r = 
amdgpu_job_submit(job, &adev->mman.entity,
59b4a97742888d Flora Cui       2016-07-19  1972                               
AMDGPU_FENCE_OWNER_UNDEFINED, fence);
59b4a97742888d Flora Cui       2016-07-19  1973         if (r)
59b4a97742888d Flora Cui       2016-07-19  1974                 goto error_free;
59b4a97742888d Flora Cui       2016-07-19  1975  
59b4a97742888d Flora Cui       2016-07-19  1976         return 0;
59b4a97742888d Flora Cui       2016-07-19  1977  
59b4a97742888d Flora Cui       2016-07-19  1978  error_free:
59b4a97742888d Flora Cui       2016-07-19  1979         amdgpu_job_free(job);
59b4a97742888d Flora Cui       2016-07-19  1980         return r;
59b4a97742888d Flora Cui       2016-07-19  1981  }
59b4a97742888d Flora Cui       2016-07-19  1982  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/[email protected]

Attachment: .config.gz
Description: application/gzip

_______________________________________________
kbuild mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to