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

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 
master
head:   5833291ab6de9c3e2374336b51c814e515e8f3a5
commit: d3116756a710e3cd51293a9d58b525957ab7e784 drm/ttm: rename bo->mem and 
make it a pointer
date:   5 months ago
:::::: branch date: 7 hours ago
:::::: commit date: 5 months ago
config: i386-randconfig-m031-20211011 (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?

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

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