[hnaz-mm:master 347/435] include/linux/generic-radix-tree.h:190:18: error: implicit declaration of function 'round_up'

From: kernel test robot
Date: Sat Nov 06 2021 - 12:41:31 EST


tree: https://github.com/hnaz/linux-mm master
head: b8280145cf2a894c873fdf91fb2af474c52ac6cc
commit: 60a1efc701a99db4ec497669986977d30eda503d [347/435] include/linux/generic-radix-tree.h: replace kernel.h with the necessary inclusions
config: x86_64-randconfig-a002-20211104 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/hnaz/linux-mm/commit/60a1efc701a99db4ec497669986977d30eda503d
git remote add hnaz-mm https://github.com/hnaz/linux-mm
git fetch --no-tags hnaz-mm master
git checkout 60a1efc701a99db4ec497669986977d30eda503d
# save the attached .config to linux build tree
make W=1 ARCH=x86_64

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

Note: the hnaz-mm/master HEAD b8280145cf2a894c873fdf91fb2af474c52ac6cc builds fine.
It only hurts bisectability.

All errors (new ones prefixed by >>):

In file included from lib/generic-radix-tree.c:3:
include/linux/generic-radix-tree.h: In function '__genradix_iter_advance':
>> include/linux/generic-radix-tree.h:190:18: error: implicit declaration of function 'round_up' [-Werror=implicit-function-declaration]
190 | iter->offset = round_up(iter->offset, PAGE_SIZE);
| ^~~~~~~~
cc1: some warnings being treated as errors


vim +/round_up +190 include/linux/generic-radix-tree.h

ba20ba2e3743ba Kent Overstreet 2019-03-11 169
ba20ba2e3743ba Kent Overstreet 2019-03-11 170 /**
ba20ba2e3743ba Kent Overstreet 2019-03-11 171 * genradix_iter_peek - get first entry at or above iterator's current
ba20ba2e3743ba Kent Overstreet 2019-03-11 172 * position
ba20ba2e3743ba Kent Overstreet 2019-03-11 173 * @_iter: a genradix_iter
ba20ba2e3743ba Kent Overstreet 2019-03-11 174 * @_radix: genradix being iterated over
ba20ba2e3743ba Kent Overstreet 2019-03-11 175 *
ba20ba2e3743ba Kent Overstreet 2019-03-11 176 * If no more entries exist at or above @_iter's current position, returns NULL
ba20ba2e3743ba Kent Overstreet 2019-03-11 177 */
ba20ba2e3743ba Kent Overstreet 2019-03-11 178 #define genradix_iter_peek(_iter, _radix) \
ba20ba2e3743ba Kent Overstreet 2019-03-11 179 (__genradix_cast(_radix) \
ba20ba2e3743ba Kent Overstreet 2019-03-11 180 __genradix_iter_peek(_iter, &(_radix)->tree, \
ba20ba2e3743ba Kent Overstreet 2019-03-11 181 PAGE_SIZE / __genradix_obj_size(_radix)))
ba20ba2e3743ba Kent Overstreet 2019-03-11 182
ba20ba2e3743ba Kent Overstreet 2019-03-11 183 static inline void __genradix_iter_advance(struct genradix_iter *iter,
ba20ba2e3743ba Kent Overstreet 2019-03-11 184 size_t obj_size)
ba20ba2e3743ba Kent Overstreet 2019-03-11 185 {
ba20ba2e3743ba Kent Overstreet 2019-03-11 186 iter->offset += obj_size;
ba20ba2e3743ba Kent Overstreet 2019-03-11 187
ba20ba2e3743ba Kent Overstreet 2019-03-11 188 if (!is_power_of_2(obj_size) &&
ba20ba2e3743ba Kent Overstreet 2019-03-11 189 (iter->offset & (PAGE_SIZE - 1)) + obj_size > PAGE_SIZE)
ba20ba2e3743ba Kent Overstreet 2019-03-11 @190 iter->offset = round_up(iter->offset, PAGE_SIZE);
ba20ba2e3743ba Kent Overstreet 2019-03-11 191
ba20ba2e3743ba Kent Overstreet 2019-03-11 192 iter->pos++;
ba20ba2e3743ba Kent Overstreet 2019-03-11 193 }
ba20ba2e3743ba Kent Overstreet 2019-03-11 194

:::::: The code at line 190 was first introduced by commit
:::::: ba20ba2e3743bac786dff777954c11930256075e generic radix trees

:::::: TO: Kent Overstreet <kent.overstreet@xxxxxxxxx>
:::::: CC: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip