All of lore.kernel.org
 help / color / mirror / Atom feed
* drivers/gpu/drm/radeon/radeon_ttm.c:382 radeon_ttm_io_mem_reserve() warn: should 'mem->start << 12' be a 64 bit
@ 2020-10-25 11:27 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2020-10-25 11:27 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 6077 bytes --]

CC: kbuild-all(a)lists.01.org
CC: linux-kernel(a)vger.kernel.org
TO: "Christian König" <christian.koenig@amd.com>
CC: Dave Airlie <airlied@redhat.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   d76913908102044f14381df865bb74df17a538cb
commit: 54d04ea8cdbd143496e4f5cc9c0a9f86c0e55a2e drm/ttm: merge offset and base in ttm_bus_placement
date:   7 weeks ago
:::::: branch date: 16 hours ago
:::::: commit date: 7 weeks ago
config: i386-randconfig-m031-20201025 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

New smatch warnings:
drivers/gpu/drm/radeon/radeon_ttm.c:382 radeon_ttm_io_mem_reserve() warn: should 'mem->start << 12' be a 64 bit type?

Old smatch warnings:
drivers/gpu/drm/radeon/radeon_ttm.c:536 radeon_ttm_backend_bind() warn: should 'bo_mem->start << 12' be a 64 bit type?
drivers/gpu/drm/radeon/radeon_ttm.c:631 radeon_ttm_tt_populate() error: we previously assumed 'gtt' could be null (see line 619)
include/drm/ttm/ttm_bo_driver.h:488 ttm_bo_reserve() warn: inconsistent returns '*bo->base.resv'.
include/linux/fs.h:867 i_size_write() warn: statement has no effect 31

vim +382 drivers/gpu/drm/radeon/radeon_ttm.c

771fe6b912fca5 Jerome Glisse   2009-06-05  361  
2966141ad2dda2 Dave Airlie     2020-08-04  362  static int radeon_ttm_io_mem_reserve(struct ttm_bo_device *bdev, struct ttm_resource *mem)
0a2d50e3a8faaf Jerome Glisse   2010-04-09  363  {
0a2d50e3a8faaf Jerome Glisse   2010-04-09  364  	struct radeon_device *rdev = radeon_get_rdev(bdev);
ebb21aa1882f41 Dave Airlie     2020-08-11  365  	size_t bus_size = (size_t)mem->num_pages << PAGE_SHIFT;
0a2d50e3a8faaf Jerome Glisse   2010-04-09  366  
0a2d50e3a8faaf Jerome Glisse   2010-04-09  367  	switch (mem->mem_type) {
0a2d50e3a8faaf Jerome Glisse   2010-04-09  368  	case TTM_PL_SYSTEM:
0a2d50e3a8faaf Jerome Glisse   2010-04-09  369  		/* system memory */
0a2d50e3a8faaf Jerome Glisse   2010-04-09  370  		return 0;
0a2d50e3a8faaf Jerome Glisse   2010-04-09  371  	case TTM_PL_TT:
a7fb8a23c1afa6 Daniel Vetter   2015-09-09  372  #if IS_ENABLED(CONFIG_AGP)
0a2d50e3a8faaf Jerome Glisse   2010-04-09  373  		if (rdev->flags & RADEON_IS_AGP) {
0a2d50e3a8faaf Jerome Glisse   2010-04-09  374  			/* RADEON_IS_AGP is set only if AGP is active */
54d04ea8cdbd14 Christian König 2020-09-07  375  			mem->bus.offset = (mem->start << PAGE_SHIFT) +
54d04ea8cdbd14 Christian König 2020-09-07  376  				rdev->mc.agp_base;
365048ff7f977c Michel Dänzer   2010-05-19  377  			mem->bus.is_iomem = !rdev->ddev->agp->cant_use_aperture;
0a2d50e3a8faaf Jerome Glisse   2010-04-09  378  		}
0a2d50e3a8faaf Jerome Glisse   2010-04-09  379  #endif
0a2d50e3a8faaf Jerome Glisse   2010-04-09  380  		break;
0a2d50e3a8faaf Jerome Glisse   2010-04-09  381  	case TTM_PL_VRAM:
d961db75ce86a8 Ben Skeggs      2010-08-05 @382  		mem->bus.offset = mem->start << PAGE_SHIFT;
0a2d50e3a8faaf Jerome Glisse   2010-04-09  383  		/* check if it's visible */
ebb21aa1882f41 Dave Airlie     2020-08-11  384  		if ((mem->bus.offset + bus_size) > rdev->mc.visible_vram_size)
0a2d50e3a8faaf Jerome Glisse   2010-04-09  385  			return -EINVAL;
54d04ea8cdbd14 Christian König 2020-09-07  386  		mem->bus.offset += rdev->mc.aper_base;
0a2d50e3a8faaf Jerome Glisse   2010-04-09  387  		mem->bus.is_iomem = true;
ffb57c4b8612c3 Jay Estabrook   2011-07-06  388  #ifdef __alpha__
ffb57c4b8612c3 Jay Estabrook   2011-07-06  389  		/*
ffb57c4b8612c3 Jay Estabrook   2011-07-06  390  		 * Alpha: use bus.addr to hold the ioremap() return,
ffb57c4b8612c3 Jay Estabrook   2011-07-06  391  		 * so we can modify bus.base below.
ffb57c4b8612c3 Jay Estabrook   2011-07-06  392  		 */
ffb57c4b8612c3 Jay Estabrook   2011-07-06  393  		if (mem->placement & TTM_PL_FLAG_WC)
ffb57c4b8612c3 Jay Estabrook   2011-07-06  394  			mem->bus.addr =
54d04ea8cdbd14 Christian König 2020-09-07  395  				ioremap_wc(mem->bus.offset, bus_size);
ffb57c4b8612c3 Jay Estabrook   2011-07-06  396  		else
ffb57c4b8612c3 Jay Estabrook   2011-07-06  397  			mem->bus.addr =
54d04ea8cdbd14 Christian König 2020-09-07  398  				ioremap(mem->bus.offset, bus_size);
3b2c6932828027 Arvind Yadav    2017-01-24  399  		if (!mem->bus.addr)
3b2c6932828027 Arvind Yadav    2017-01-24  400  			return -ENOMEM;
ffb57c4b8612c3 Jay Estabrook   2011-07-06  401  
ffb57c4b8612c3 Jay Estabrook   2011-07-06  402  		/*
ffb57c4b8612c3 Jay Estabrook   2011-07-06  403  		 * Alpha: Use just the bus offset plus
ffb57c4b8612c3 Jay Estabrook   2011-07-06  404  		 * the hose/domain memory base for bus.base.
ffb57c4b8612c3 Jay Estabrook   2011-07-06  405  		 * It then can be used to build PTEs for VRAM
ffb57c4b8612c3 Jay Estabrook   2011-07-06  406  		 * access, as done in ttm_bo_vm_fault().
ffb57c4b8612c3 Jay Estabrook   2011-07-06  407  		 */
54d04ea8cdbd14 Christian König 2020-09-07  408  		mem->bus.offset = (mem->bus.offset & 0x0ffffffffUL) +
ffb57c4b8612c3 Jay Estabrook   2011-07-06  409  			rdev->ddev->hose->dense_mem_base;
ffb57c4b8612c3 Jay Estabrook   2011-07-06  410  #endif
0a2d50e3a8faaf Jerome Glisse   2010-04-09  411  		break;
0a2d50e3a8faaf Jerome Glisse   2010-04-09  412  	default:
0a2d50e3a8faaf Jerome Glisse   2010-04-09  413  		return -EINVAL;
0a2d50e3a8faaf Jerome Glisse   2010-04-09  414  	}
0a2d50e3a8faaf Jerome Glisse   2010-04-09  415  	return 0;
0a2d50e3a8faaf Jerome Glisse   2010-04-09  416  }
0a2d50e3a8faaf Jerome Glisse   2010-04-09  417  

:::::: The code at line 382 was first introduced by commit
:::::: d961db75ce86a84f1f04e91ad1014653ed7d9f46 drm/ttm: restructure to allow driver to plug in alternate memory manager

:::::: TO: Ben Skeggs <bskeggs@redhat.com>
:::::: CC: Ben Skeggs <bskeggs@redhat.com>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 30195 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2020-10-25 11:27 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-25 11:27 drivers/gpu/drm/radeon/radeon_ttm.c:382 radeon_ttm_io_mem_reserve() warn: should 'mem->start << 12' be a 64 bit kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.