Re: [PATCH 1/3] maple_tree: introduce mas_prealloc_calc()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 10/9/23 3:25 PM, kernel test robot wrote:
Hi Sidhartha,

kernel test robot noticed the following build warnings:

[auto build test WARNING on akpm-mm/mm-everything]
[also build test WARNING on linus/master v6.6-rc5 next-20231009]
[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/Sidhartha-Kumar/maple_tree-introduce-mas_prealloc_calc/20231010-041859
base:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-everything
patch link:    https://lore.kernel.org/r/20231009201639.920512-2-sidhartha.kumar%40oracle.com
patch subject: [PATCH 1/3] maple_tree: introduce mas_prealloc_calc()
config: m68k-allyesconfig (https://download.01.org/0day-ci/archive/20231010/202310100603.qsn3ruBx-lkp@xxxxxxxxx/config)
compiler: m68k-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231010/202310100603.qsn3ruBx-lkp@xxxxxxxxx/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@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202310100603.qsn3ruBx-lkp@xxxxxxxxx/

All warnings (new ones prefixed by >>):

lib/maple_tree.c:5428:5: warning: no previous prototype for 'mas_prealloc_calc' [-Wmissing-prototypes]
     5428 | int mas_prealloc_calc(struct ma_wr_state *wr_mas)
          |     ^~~~~~~~~~~~~~~~~


vim +/mas_prealloc_calc +5428 lib/maple_tree.c

   5420	
   5421	/**
   5422	 * mas_prealloc_calc() - Calculate number of nodes needed for a
   5423	 * store operation.
   5424	 * @wr_mas: The maple write state
   5425	 *
   5426	 * Return: Number of nodes required for preallocation.
   5427	 */
5428	int mas_prealloc_calc(struct ma_wr_state *wr_mas)

Adding static inline should fix this compilation error.

   5429	{
   5430		struct ma_state *mas = wr_mas->mas;
   5431		unsigned char node_size;
   5432	
   5433		if (unlikely(!mas->index && mas->last == ULONG_MAX))
   5434			return 1;
   5435	
   5436		/* Root expand */
   5437		if (unlikely(mas_is_none(mas) || mas_is_ptr(mas)))
   5438			return 1;
   5439	
   5440		if (unlikely(!mas_wr_walk(wr_mas))) {
   5441			/* Spanning store, use worst case for now */
   5442			return 1 + mas_mt_height(mas) * 3;
   5443		}
   5444	
   5445		/* At this point, we are at the leaf node that needs to be altered. */
   5446		/* Exact fit, no nodes needed. */
   5447		if (wr_mas->r_min == mas->index && wr_mas->r_max == mas->last)
   5448			return 0;
   5449	
   5450		mas_wr_end_piv(wr_mas);
   5451		node_size = mas_wr_new_end(wr_mas);
   5452		if (node_size >= mt_slots[wr_mas->type]) {
   5453			/* Split, worst case for now. */
   5454			return 1 + mas_mt_height(mas) * 2;
   5455		}
   5456	
   5457		/* New root needs a singe node */
   5458		if (unlikely(mte_is_root(mas->node)))
   5459			return 1;
   5460	
   5461		/* Potential spanning rebalance collapsing a node, use worst-case */
   5462		if (node_size  - 1 <= mt_min_slots[wr_mas->type])
   5463			return mas_mt_height(mas) * 2 - 1;
   5464	
   5465		/* node store, slot store needs one node */
   5466		return 1;
   5467	}
   5468	






[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux