From: kernel test robot <lkp@intel.com>
To: Sidhartha Kumar <sidhartha.kumar@oracle.com>,
linux-kernel@vger.kernel.org, maple-tree@lists.infradead.org
Cc: oe-kbuild-all@lists.linux.dev, linux-mm@kvack.org,
akpm@linux-foundation.org, liam.howlett@oracle.com,
zhangpeng.00@bytedance.com, willy@infradead.org,
Sidhartha Kumar <sidhartha.kumar@oracle.com>
Subject: Re: [PATCH 12/18] maple_tree: convert mas_insert() to preallocate nodes
Date: Wed, 5 Jun 2024 06:44:54 +0800 [thread overview]
Message-ID: <202406050614.NwHTjXFD-lkp@intel.com> (raw)
In-Reply-To: <20240604174145.563900-13-sidhartha.kumar@oracle.com>
Hi Sidhartha,
kernel test robot noticed the following build warnings:
[auto build test WARNING on akpm-mm/mm-nonmm-unstable]
[also build test WARNING on linus/master v6.10-rc2 next-20240604]
[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-store_type-enum/20240605-014633
base: https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-nonmm-unstable
patch link: https://lore.kernel.org/r/20240604174145.563900-13-sidhartha.kumar%40oracle.com
patch subject: [PATCH 12/18] maple_tree: convert mas_insert() to preallocate nodes
config: openrisc-allnoconfig (https://download.01.org/0day-ci/archive/20240605/202406050614.NwHTjXFD-lkp@intel.com/config)
compiler: or1k-linux-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240605/202406050614.NwHTjXFD-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@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202406050614.NwHTjXFD-lkp@intel.com/
All warnings (new ones prefixed by >>):
lib/maple_tree.c:4304: warning: Function parameter or struct member 'entry' not described in 'mas_prealloc_calc'
>> lib/maple_tree.c:4449: warning: Function parameter or struct member 'gfp' not described in 'mas_insert'
vim +4449 lib/maple_tree.c
e0c5446b52f6a9 Sidhartha Kumar 2024-06-04 4439
54a611b605901c Liam R. Howlett 2022-09-06 4440 /**
54a611b605901c Liam R. Howlett 2022-09-06 4441 * mas_insert() - Internal call to insert a value
54a611b605901c Liam R. Howlett 2022-09-06 4442 * @mas: The maple state
54a611b605901c Liam R. Howlett 2022-09-06 4443 * @entry: The entry to store
54a611b605901c Liam R. Howlett 2022-09-06 4444 *
54a611b605901c Liam R. Howlett 2022-09-06 4445 * Return: %NULL or the contents that already exists at the requested index
54a611b605901c Liam R. Howlett 2022-09-06 4446 * otherwise. The maple state needs to be checked for error conditions.
54a611b605901c Liam R. Howlett 2022-09-06 4447 */
9d36d13535c7c8 Sidhartha Kumar 2024-06-04 4448 static inline void *mas_insert(struct ma_state *mas, void *entry, gfp_t gfp)
54a611b605901c Liam R. Howlett 2022-09-06 @4449 {
54a611b605901c Liam R. Howlett 2022-09-06 4450 MA_WR_STATE(wr_mas, mas, entry);
54a611b605901c Liam R. Howlett 2022-09-06 4451
54a611b605901c Liam R. Howlett 2022-09-06 4452 /*
54a611b605901c Liam R. Howlett 2022-09-06 4453 * Inserting a new range inserts either 0, 1, or 2 pivots within the
54a611b605901c Liam R. Howlett 2022-09-06 4454 * tree. If the insert fits exactly into an existing gap with a value
54a611b605901c Liam R. Howlett 2022-09-06 4455 * of NULL, then the slot only needs to be written with the new value.
54a611b605901c Liam R. Howlett 2022-09-06 4456 * If the range being inserted is adjacent to another range, then only a
54a611b605901c Liam R. Howlett 2022-09-06 4457 * single pivot needs to be inserted (as well as writing the entry). If
54a611b605901c Liam R. Howlett 2022-09-06 4458 * the new range is within a gap but does not touch any other ranges,
54a611b605901c Liam R. Howlett 2022-09-06 4459 * then two pivots need to be inserted: the start - 1, and the end. As
54a611b605901c Liam R. Howlett 2022-09-06 4460 * usual, the entry must be written. Most operations require a new node
54a611b605901c Liam R. Howlett 2022-09-06 4461 * to be allocated and replace an existing node to ensure RCU safety,
54a611b605901c Liam R. Howlett 2022-09-06 4462 * when in RCU mode. The exception to requiring a newly allocated node
54a611b605901c Liam R. Howlett 2022-09-06 4463 * is when inserting at the end of a node (appending). When done
54a611b605901c Liam R. Howlett 2022-09-06 4464 * carefully, appending can reuse the node in place.
54a611b605901c Liam R. Howlett 2022-09-06 4465 */
54a611b605901c Liam R. Howlett 2022-09-06 4466 wr_mas.content = mas_start(mas);
54a611b605901c Liam R. Howlett 2022-09-06 4467 if (wr_mas.content)
54a611b605901c Liam R. Howlett 2022-09-06 4468 goto exists;
54a611b605901c Liam R. Howlett 2022-09-06 4469
9d36d13535c7c8 Sidhartha Kumar 2024-06-04 4470 mas_wr_preallocate(&wr_mas, entry, gfp);
9d36d13535c7c8 Sidhartha Kumar 2024-06-04 4471 if (mas_is_err(mas))
54a611b605901c Liam R. Howlett 2022-09-06 4472 return NULL;
54a611b605901c Liam R. Howlett 2022-09-06 4473
54a611b605901c Liam R. Howlett 2022-09-06 4474 /* spanning writes always overwrite something */
9d36d13535c7c8 Sidhartha Kumar 2024-06-04 4475 if (mas->store_type == wr_spanning_store)
54a611b605901c Liam R. Howlett 2022-09-06 4476 goto exists;
54a611b605901c Liam R. Howlett 2022-09-06 4477
54a611b605901c Liam R. Howlett 2022-09-06 4478 /* At this point, we are at the leaf node that needs to be altered. */
9d36d13535c7c8 Sidhartha Kumar 2024-06-04 4479 if (mas->store_type != wr_new_root && mas->store_type != wr_store_root) {
54a611b605901c Liam R. Howlett 2022-09-06 4480 wr_mas.offset_end = mas->offset;
54a611b605901c Liam R. Howlett 2022-09-06 4481 wr_mas.end_piv = wr_mas.r_max;
54a611b605901c Liam R. Howlett 2022-09-06 4482
54a611b605901c Liam R. Howlett 2022-09-06 4483 if (wr_mas.content || (mas->last > wr_mas.r_max))
54a611b605901c Liam R. Howlett 2022-09-06 4484 goto exists;
9d36d13535c7c8 Sidhartha Kumar 2024-06-04 4485 }
54a611b605901c Liam R. Howlett 2022-09-06 4486
9d36d13535c7c8 Sidhartha Kumar 2024-06-04 4487 mas_wr_store_entry(&wr_mas);
54a611b605901c Liam R. Howlett 2022-09-06 4488 return wr_mas.content;
54a611b605901c Liam R. Howlett 2022-09-06 4489
54a611b605901c Liam R. Howlett 2022-09-06 4490 exists:
54a611b605901c Liam R. Howlett 2022-09-06 4491 mas_set_err(mas, -EEXIST);
54a611b605901c Liam R. Howlett 2022-09-06 4492 return wr_mas.content;
54a611b605901c Liam R. Howlett 2022-09-06 4493
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2024-06-04 22:45 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-04 17:41 [PATCH 00/18] Introduce a store type enum for the Maple tree Sidhartha Kumar
2024-06-04 17:41 ` [PATCH 01/18] maple_tree: introduce store_type enum Sidhartha Kumar
2024-06-04 17:41 ` [PATCH 02/18] maple_tree: introduce mas_wr_prealloc_setup() Sidhartha Kumar
2024-06-04 17:41 ` [PATCH 03/18] maple_tree: move up mas_wr_store_setup() and mas_wr_prealloc_setup() Sidhartha Kumar
2024-06-04 17:41 ` [PATCH 04/18] maple_tree: introduce mas_wr_store_type() Sidhartha Kumar
2024-06-04 19:07 ` Liam R. Howlett
2024-06-06 2:15 ` Sidhartha Kumar
2024-06-04 21:09 ` kernel test robot
2024-06-04 17:41 ` [PATCH 05/18] maple_tree: set store type in mas_store_prealloc() Sidhartha Kumar
2024-06-04 19:27 ` Liam R. Howlett
2024-06-04 17:41 ` [PATCH 06/18] maple_tree: remove mas_destroy() from mas_nomem() Sidhartha Kumar
2024-06-04 19:21 ` Liam R. Howlett
2024-06-04 17:41 ` [PATCH 07/18] maple_tree: use mas_store_gfp() in mas_erase() Sidhartha Kumar
2024-06-04 17:41 ` [PATCH 08/18] maple_tree: set write store type in mas_store() Sidhartha Kumar
2024-06-04 17:41 ` [PATCH 09/18] maple_tree: use mas_store_gfp() in mtree_store_range() Sidhartha Kumar
2024-06-04 19:24 ` Liam R. Howlett
2024-06-04 17:41 ` [PATCH 10/18] maple_tree: print store type in mas_dump() Sidhartha Kumar
2024-06-04 17:41 ` [PATCH 11/18] maple_tree: use store type in mas_wr_store_entry() Sidhartha Kumar
2024-06-04 22:02 ` kernel test robot
2024-06-04 17:41 ` [PATCH 12/18] maple_tree: convert mas_insert() to preallocate nodes Sidhartha Kumar
2024-06-04 22:44 ` kernel test robot [this message]
2024-06-04 17:41 ` [PATCH 13/18] maple_tree: simplify mas_commit_b_node() Sidhartha Kumar
2024-06-04 19:34 ` Liam R. Howlett
2024-06-26 10:40 ` Mateusz Guzik
2024-06-26 17:28 ` Andrew Morton
2024-06-26 17:45 ` Sidhartha Kumar
2024-06-26 18:29 ` Mateusz Guzik
2024-06-04 17:41 ` [PATCH 14/18] maple_tree: remove mas_wr_modify() Sidhartha Kumar
2024-06-04 17:41 ` [PATCH 15/18] maple_tree: have mas_store() allocate nodes if needed Sidhartha Kumar
2024-06-04 17:41 ` [PATCH 16/18] maple_tree: remove node allocations from various write helper functions Sidhartha Kumar
2024-06-04 17:41 ` [PATCH 17/18] maple_tree: remove repeated sanity checks from mas_wr_append() Sidhartha Kumar
2024-06-04 17:41 ` [PATCH 18/18] maple_tree: remove unneeded mas_wr_walk() in mas_store_prealloc() Sidhartha Kumar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202406050614.NwHTjXFD-lkp@intel.com \
--to=lkp@intel.com \
--cc=akpm@linux-foundation.org \
--cc=liam.howlett@oracle.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=maple-tree@lists.infradead.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=sidhartha.kumar@oracle.com \
--cc=willy@infradead.org \
--cc=zhangpeng.00@bytedance.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.