[PATCH 6/6] drm/i915: Implement fdinfo memory stats printing

kernel test robot lkp at intel.com
Wed Sep 27 08:07:26 UTC 2023


Hi Tvrtko,

kernel test robot noticed the following build warnings:

[auto build test WARNING on drm-tip/drm-tip]

url:    https://github.com/intel-lab-lkp/linux/commits/Tvrtko-Ursulin/drm-i915-Add-ability-for-tracking-buffer-objects-per-client/20230922-214929
base:   git://anongit.freedesktop.org/drm/drm-tip drm-tip
patch link:    https://lore.kernel.org/r/20230922134700.235039-7-tvrtko.ursulin%40linux.intel.com
patch subject: [PATCH 6/6] drm/i915: Implement fdinfo memory stats printing
config: i386-randconfig-062-20230927 (https://download.01.org/0day-ci/archive/20230927/202309271528.TmGx2jEq-lkp@intel.com/config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20230927/202309271528.TmGx2jEq-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp at intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202309271528.TmGx2jEq-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
>> drivers/gpu/drm/i915/i915_drm_client.c:92:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
>> drivers/gpu/drm/i915/i915_drm_client.c:92:9: sparse:    struct list_head [noderef] __rcu *
>> drivers/gpu/drm/i915/i915_drm_client.c:92:9: sparse:    struct list_head *
>> drivers/gpu/drm/i915/i915_drm_client.c:92:9: sparse: sparse: incompatible types in comparison expression (different address spaces):
>> drivers/gpu/drm/i915/i915_drm_client.c:92:9: sparse:    struct list_head [noderef] __rcu *
>> drivers/gpu/drm/i915/i915_drm_client.c:92:9: sparse:    struct list_head *

vim +92 drivers/gpu/drm/i915/i915_drm_client.c

    72	
    73	static void show_meminfo(struct drm_printer *p, struct drm_file *file)
    74	{
    75		struct drm_memory_stats stats[INTEL_REGION_UNKNOWN] = {};
    76		struct drm_i915_file_private *fpriv = file->driver_priv;
    77		struct i915_drm_client *client = fpriv->client;
    78		struct drm_i915_private *i915 = fpriv->i915;
    79		struct drm_i915_gem_object *obj;
    80		struct intel_memory_region *mr;
    81		struct list_head *pos;
    82		unsigned int id;
    83	
    84		/* Public objects. */
    85		spin_lock(&file->table_lock);
    86		idr_for_each_entry(&file->object_idr, obj, id)
    87			obj_meminfo(obj, stats);
    88		spin_unlock(&file->table_lock);
    89	
    90		/* Internal objects. */
    91		rcu_read_lock();
  > 92		list_for_each_rcu(pos, &client->objects_list) {
    93			obj = i915_gem_object_get_rcu(list_entry(pos, typeof(*obj),
    94								 client_link));
    95			if (!obj)
    96				continue;
    97			obj_meminfo(obj, stats);
    98			i915_gem_object_put(obj);
    99		}
   100		rcu_read_unlock();
   101	
   102		for_each_memory_region(mr, i915, id)
   103			drm_print_memory_stats(p,
   104					       &stats[id],
   105					       DRM_GEM_OBJECT_RESIDENT |
   106					       DRM_GEM_OBJECT_PURGEABLE,
   107					       mr->uabi_name);
   108	}
   109	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


More information about the dri-devel mailing list