Hi Maarten,

kernel test robot noticed the following build warnings:

[auto build test WARNING on drm/drm-next]
[also build test WARNING on drm-exynos/exynos-drm-next linus/master v6.12-rc4 
next-20241024]
[cannot apply to tj-cgroup/for-next drm-xe/drm-xe-next akpm-mm/mm-everything 
drm-intel/for-linux-next drm-intel/for-linux-next-fixes drm-misc/drm-misc-next 
drm-tip/drm-tip]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    
https://github.com/intel-lab-lkp/linux/commits/Maarten-Lankhorst/kernel-cgroup-Add-dev-memory-accounting-cgroup/20241023-155504
base:   git://anongit.freedesktop.org/drm/drm drm-next
patch link:    
https://lore.kernel.org/r/20241023075302.27194-2-maarten.lankhorst%40linux.intel.com
patch subject: [PATCH 1/7] kernel/cgroup: Add "dev" memory accounting cgroup
config: i386-randconfig-061-20241025 
(https://download.01.org/0day-ci/archive/20241025/202410251311.olenabod-...@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): 
(https://download.01.org/0day-ci/archive/20241025/202410251311.olenabod-...@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 <l...@intel.com>
| Closes: 
https://lore.kernel.org/oe-kbuild-all/202410251311.olenabod-...@intel.com/

sparse warnings: (new ones prefixed by >>)
>> kernel/cgroup/dev.c:423:9: sparse: sparse: incompatible types in comparison 
>> expression (different address spaces):
   kernel/cgroup/dev.c:423:9: sparse:    struct list_head [noderef] __rcu *
   kernel/cgroup/dev.c:423:9: sparse:    struct list_head *
>> kernel/cgroup/dev.c:423:9: sparse: sparse: incompatible types in comparison 
>> expression (different address spaces):
   kernel/cgroup/dev.c:423:9: sparse:    struct list_head [noderef] __rcu *
   kernel/cgroup/dev.c:423:9: sparse:    struct list_head *
   kernel/cgroup/dev.c: note: in included file (through include/linux/smp.h, 
include/linux/lockdep.h, include/linux/spinlock.h, ...):
   include/linux/list.h:83:21: sparse: sparse: self-comparison always evaluates 
to true
   include/linux/list.h:83:21: sparse: sparse: self-comparison always evaluates 
to true
   include/linux/list.h:83:21: sparse: sparse: self-comparison always evaluates 
to true

vim +423 kernel/cgroup/dev.c

   400  
   401  /**
   402   * dev_cgroup_unregister_device() - Unregister a previously registered 
device.
   403   * @cgdev: The device to unregister.
   404   *
   405   * This function undoes dev_cgroup_register_device.
   406   */
   407  void dev_cgroup_unregister_device(struct dev_cgroup_device *cgdev)
   408  {
   409          struct devcg_device *dev;
   410          struct list_head *entry;
   411  
   412          if (!cgdev || !cgdev->priv)
   413                  return;
   414  
   415          dev = cgdev->priv;
   416          cgdev->priv = NULL;
   417  
   418          spin_lock(&devcg_lock);
   419  
   420          /* Remove from global device list */
   421          list_del_rcu(&dev->dev_node);
   422  
 > 423          list_for_each_rcu(entry, &dev->pools) {
   424                  struct dev_cgroup_pool_state *pool =
   425                          container_of(entry, typeof(*pool), dev_node);
   426  
   427                  list_del_rcu(&pool->css_node);
   428          }
   429  
   430          /*
   431           * Ensure any RCU based lookups fail. Additionally,
   432           * no new pools should be added to the dead device
   433           * by get_cg_pool_unlocked.
   434           */
   435          dev->unregistered = true;
   436          spin_unlock(&devcg_lock);
   437  
   438          kref_put(&dev->ref, devcg_free_device);
   439  }
   440  EXPORT_SYMBOL_GPL(dev_cgroup_unregister_device);
   441  

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

Reply via email to