Hi Xie,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on tip/irq/core]
[also build test WARNING on linus/master next-20230228]
[cannot apply to mst-vhost/linux-next v6.2]
[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/Xie-Yongji/lib-group_cpus-Export-group_cpus_evenly/20230228-174438
patch link:    
https://lore.kernel.org/r/20230228094110.37-6-xieyongji%40bytedance.com
patch subject: [PATCH v3 05/11] vduse: Support automatic irq callback affinity
config: m68k-allyesconfig 
(https://download.01.org/0day-ci/archive/20230228/202302281954.jra7qzq4-...@intel.com/config)
compiler: m68k-linux-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
        wget 
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O 
~/bin/make.cross
        chmod +x ~/bin/make.cross
        # 
https://github.com/intel-lab-lkp/linux/commit/6c15cc28cb814c0e6cb80955bc59517e80c15ae2
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review 
Xie-Yongji/lib-group_cpus-Export-group_cpus_evenly/20230228-174438
        git checkout 6c15cc28cb814c0e6cb80955bc59517e80c15ae2
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 
O=build_dir ARCH=m68k olddefconfig
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 
O=build_dir ARCH=m68k SHELL=/bin/bash drivers/vdpa/vdpa_user/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <l...@intel.com>
| Link: 
https://lore.kernel.org/oe-kbuild-all/202302281954.jra7qzq4-...@intel.com/

All warnings (new ones prefixed by >>):

>> drivers/vdpa/vdpa_user/vduse_dev.c:725:1: warning: no previous prototype for 
>> 'create_affinity_masks' [-Wmissing-prototypes]
     725 | create_affinity_masks(unsigned int nvecs, struct irq_affinity *affd)
         | ^~~~~~~~~~~~~~~~~~~~~


vim +/create_affinity_masks +725 drivers/vdpa/vdpa_user/vduse_dev.c

   723  
   724  struct cpumask *
 > 725  create_affinity_masks(unsigned int nvecs, struct irq_affinity *affd)
   726  {
   727          unsigned int affvecs = 0, curvec, usedvecs, i;
   728          struct cpumask *masks = NULL;
   729  
   730          if (nvecs > affd->pre_vectors + affd->post_vectors)
   731                  affvecs = nvecs - affd->pre_vectors - 
affd->post_vectors;
   732  
   733          if (!affd->calc_sets)
   734                  affd->calc_sets = default_calc_sets;
   735  
   736          affd->calc_sets(affd, affvecs);
   737  
   738          if (!affvecs)
   739                  return NULL;
   740  
   741          masks = kcalloc(nvecs, sizeof(*masks), GFP_KERNEL);
   742          if (!masks)
   743                  return NULL;
   744  
   745          /* Fill out vectors at the beginning that don't need affinity */
   746          for (curvec = 0; curvec < affd->pre_vectors; curvec++)
   747                  cpumask_setall(&masks[curvec]);
   748  
   749          for (i = 0, usedvecs = 0; i < affd->nr_sets; i++) {
   750                  unsigned int this_vecs = affd->set_size[i];
   751                  int j;
   752                  struct cpumask *result = group_cpus_evenly(this_vecs);
   753  
   754                  if (!result) {
   755                          kfree(masks);
   756                          return NULL;
   757                  }
   758  
   759                  for (j = 0; j < this_vecs; j++)
   760                          cpumask_copy(&masks[curvec + j], &result[j]);
   761                  kfree(result);
   762  
   763                  curvec += this_vecs;
   764                  usedvecs += this_vecs;
   765          }
   766  
   767          /* Fill out vectors at the end that don't need affinity */
   768          if (usedvecs >= affvecs)
   769                  curvec = affd->pre_vectors + affvecs;
   770          else
   771                  curvec = affd->pre_vectors + usedvecs;
   772          for (; curvec < nvecs; curvec++)
   773                  cpumask_setall(&masks[curvec]);
   774  
   775          return masks;
   776  }
   777  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests
_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

Reply via email to