All of lore.kernel.org
 help / color / mirror / Atom feed
* [drm-drm-intel:drm-intel-gt-next 2/5] drivers/gpu/drm/i915/gem/selftests/i915_gem_migrate.c:212 igt_lmem_pages_migrate() error: uninitialized symbol 'err'.
@ 2021-07-02  7:43 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-07-02  7:43 UTC (permalink / raw)
  To: kbuild

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

CC: kbuild-all(a)lists.01.org
TO: Matthew Auld <matthew.auld@intel.com>
CC: "Thomas Hellström" <thomas.hellstrom@linux.intel.com>
CC: "Michael J. Ruhl" <michael.j.ruhl@intel.com>

tree:   git://anongit.freedesktop.org/drm/drm-intel drm-intel-gt-next
head:   32334c9b1fd78ad661582c55b15d263a5d6d157d
commit: bf74a18ca8569ff1ac89501026a8218753f757f7 [2/5] drm/i915/gem: Introduce a selftest for the gem object migrate functionality
:::::: branch date: 2 days ago
:::::: commit date: 2 days ago
config: x86_64-randconfig-m001-20210630 (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 <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

New smatch warnings:
drivers/gpu/drm/i915/gem/selftests/i915_gem_migrate.c:212 igt_lmem_pages_migrate() error: uninitialized symbol 'err'.

Old smatch warnings:
drivers/gpu/drm/i915/gem/i915_gem_object.h:184 __i915_gem_object_lock() error: we previously assumed 'ww' could be null (see line 173)

vim +/err +212 drivers/gpu/drm/i915/gem/selftests/i915_gem_migrate.c

bf74a18ca8569f Matthew Auld 2021-06-29  165  
bf74a18ca8569f Matthew Auld 2021-06-29  166  static int igt_lmem_pages_migrate(void *arg)
bf74a18ca8569f Matthew Auld 2021-06-29  167  {
bf74a18ca8569f Matthew Auld 2021-06-29  168  	struct intel_gt *gt = arg;
bf74a18ca8569f Matthew Auld 2021-06-29  169  	struct drm_i915_private *i915 = gt->i915;
bf74a18ca8569f Matthew Auld 2021-06-29  170  	struct drm_i915_gem_object *obj;
bf74a18ca8569f Matthew Auld 2021-06-29  171  	struct i915_gem_ww_ctx ww;
bf74a18ca8569f Matthew Auld 2021-06-29  172  	struct i915_request *rq;
bf74a18ca8569f Matthew Auld 2021-06-29  173  	int err;
bf74a18ca8569f Matthew Auld 2021-06-29  174  	int i;
bf74a18ca8569f Matthew Auld 2021-06-29  175  
bf74a18ca8569f Matthew Auld 2021-06-29  176  	/* From LMEM to shmem and back again */
bf74a18ca8569f Matthew Auld 2021-06-29  177  
bf74a18ca8569f Matthew Auld 2021-06-29  178  	obj = i915_gem_object_create_lmem(i915, SZ_2M, 0);
bf74a18ca8569f Matthew Auld 2021-06-29  179  	if (IS_ERR(obj))
bf74a18ca8569f Matthew Auld 2021-06-29  180  		return PTR_ERR(obj);
bf74a18ca8569f Matthew Auld 2021-06-29  181  
bf74a18ca8569f Matthew Auld 2021-06-29  182  	/* Initial GPU fill, sync, CPU initialization. */
bf74a18ca8569f Matthew Auld 2021-06-29  183  	for_i915_gem_ww(&ww, err, true) {
bf74a18ca8569f Matthew Auld 2021-06-29  184  		err = i915_gem_object_lock(obj, &ww);
bf74a18ca8569f Matthew Auld 2021-06-29  185  		if (err)
bf74a18ca8569f Matthew Auld 2021-06-29  186  			continue;
bf74a18ca8569f Matthew Auld 2021-06-29  187  
bf74a18ca8569f Matthew Auld 2021-06-29  188  		err = ____i915_gem_object_get_pages(obj);
bf74a18ca8569f Matthew Auld 2021-06-29  189  		if (err)
bf74a18ca8569f Matthew Auld 2021-06-29  190  			continue;
bf74a18ca8569f Matthew Auld 2021-06-29  191  
bf74a18ca8569f Matthew Auld 2021-06-29  192  		err = intel_migrate_clear(&gt->migrate, &ww, NULL,
bf74a18ca8569f Matthew Auld 2021-06-29  193  					  obj->mm.pages->sgl, obj->cache_level,
bf74a18ca8569f Matthew Auld 2021-06-29  194  					  i915_gem_object_is_lmem(obj),
bf74a18ca8569f Matthew Auld 2021-06-29  195  					  0xdeadbeaf, &rq);
bf74a18ca8569f Matthew Auld 2021-06-29  196  		if (rq) {
bf74a18ca8569f Matthew Auld 2021-06-29  197  			dma_resv_add_excl_fence(obj->base.resv, &rq->fence);
bf74a18ca8569f Matthew Auld 2021-06-29  198  			i915_request_put(rq);
bf74a18ca8569f Matthew Auld 2021-06-29  199  		}
bf74a18ca8569f Matthew Auld 2021-06-29  200  		if (err)
bf74a18ca8569f Matthew Auld 2021-06-29  201  			continue;
bf74a18ca8569f Matthew Auld 2021-06-29  202  
bf74a18ca8569f Matthew Auld 2021-06-29  203  		err = i915_gem_object_wait(obj, I915_WAIT_INTERRUPTIBLE,
bf74a18ca8569f Matthew Auld 2021-06-29  204  					   5 * HZ);
bf74a18ca8569f Matthew Auld 2021-06-29  205  		if (err)
bf74a18ca8569f Matthew Auld 2021-06-29  206  			continue;
bf74a18ca8569f Matthew Auld 2021-06-29  207  
bf74a18ca8569f Matthew Auld 2021-06-29  208  		err = igt_fill_check_buffer(obj, true);
bf74a18ca8569f Matthew Auld 2021-06-29  209  		if (err)
bf74a18ca8569f Matthew Auld 2021-06-29  210  			continue;
bf74a18ca8569f Matthew Auld 2021-06-29  211  	}
bf74a18ca8569f Matthew Auld 2021-06-29 @212  	if (err)
bf74a18ca8569f Matthew Auld 2021-06-29  213  		goto out_put;
bf74a18ca8569f Matthew Auld 2021-06-29  214  
bf74a18ca8569f Matthew Auld 2021-06-29  215  	/*
bf74a18ca8569f Matthew Auld 2021-06-29  216  	 * Migrate to and from smem without explicitly syncing.
bf74a18ca8569f Matthew Auld 2021-06-29  217  	 * Finalize with data in smem for fast readout.
bf74a18ca8569f Matthew Auld 2021-06-29  218  	 */
bf74a18ca8569f Matthew Auld 2021-06-29  219  	for (i = 1; i <= 5; ++i) {
bf74a18ca8569f Matthew Auld 2021-06-29  220  		for_i915_gem_ww(&ww, err, true)
bf74a18ca8569f Matthew Auld 2021-06-29  221  			err = lmem_pages_migrate_one(&ww, obj);
bf74a18ca8569f Matthew Auld 2021-06-29  222  		if (err)
bf74a18ca8569f Matthew Auld 2021-06-29  223  			goto out_put;
bf74a18ca8569f Matthew Auld 2021-06-29  224  	}
bf74a18ca8569f Matthew Auld 2021-06-29  225  
bf74a18ca8569f Matthew Auld 2021-06-29  226  	err = i915_gem_object_lock_interruptible(obj, NULL);
bf74a18ca8569f Matthew Auld 2021-06-29  227  	if (err)
bf74a18ca8569f Matthew Auld 2021-06-29  228  		goto out_put;
bf74a18ca8569f Matthew Auld 2021-06-29  229  
bf74a18ca8569f Matthew Auld 2021-06-29  230  	/* Finally sync migration and check content. */
bf74a18ca8569f Matthew Auld 2021-06-29  231  	err = i915_gem_object_wait_migration(obj, true);
bf74a18ca8569f Matthew Auld 2021-06-29  232  	if (err)
bf74a18ca8569f Matthew Auld 2021-06-29  233  		goto out_unlock;
bf74a18ca8569f Matthew Auld 2021-06-29  234  
bf74a18ca8569f Matthew Auld 2021-06-29  235  	err = igt_fill_check_buffer(obj, false);
bf74a18ca8569f Matthew Auld 2021-06-29  236  
bf74a18ca8569f Matthew Auld 2021-06-29  237  out_unlock:
bf74a18ca8569f Matthew Auld 2021-06-29  238  	i915_gem_object_unlock(obj);
bf74a18ca8569f Matthew Auld 2021-06-29  239  out_put:
bf74a18ca8569f Matthew Auld 2021-06-29  240  	i915_gem_object_put(obj);
bf74a18ca8569f Matthew Auld 2021-06-29  241  
bf74a18ca8569f Matthew Auld 2021-06-29  242  	return err;
bf74a18ca8569f Matthew Auld 2021-06-29  243  }
bf74a18ca8569f Matthew Auld 2021-06-29  244  

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

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

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

only message in thread, other threads:[~2021-07-02  7:43 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-02  7:43 [drm-drm-intel:drm-intel-gt-next 2/5] drivers/gpu/drm/i915/gem/selftests/i915_gem_migrate.c:212 igt_lmem_pages_migrate() error: uninitialized symbol 'err' 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.