[toke:xdp-queueing-02 5/11] kernel/bpf/pifomap.c:197:6: warning: no previous prototype for function 'pifo_set_bit'

From: kernel test robot
Date: Sun Feb 13 2022 - 16:32:15 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/toke/linux.git xdp-queueing-02
head: 26dde94b299bc277f7a99a99ba64b4363964e833
commit: 34cc5abfbae0dfcb6967c54cb80f7595bc9c5c37 [5/11] Add a PIFO map type for queueing packets
config: i386-randconfig-a002 (https://download.01.org/0day-ci/archive/20220214/202202140517.jN2jJhHH-lkp@xxxxxxxxx/config)
compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project ea071884b0cc7210b3cc5fe858f0e892a779a23b)
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://git.kernel.org/pub/scm/linux/kernel/git/toke/linux.git/commit/?id=34cc5abfbae0dfcb6967c54cb80f7595bc9c5c37
git remote add toke https://git.kernel.org/pub/scm/linux/kernel/git/toke/linux.git
git fetch --no-tags toke xdp-queueing-02
git checkout 34cc5abfbae0dfcb6967c54cb80f7595bc9c5c37
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash kernel/bpf/

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

All warnings (new ones prefixed by >>):

>> kernel/bpf/pifomap.c:197:6: warning: no previous prototype for function 'pifo_set_bit' [-Wmissing-prototypes]
void pifo_set_bit(struct bpf_pifo_queue *queue, u32 rank)
^
kernel/bpf/pifomap.c:197:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void pifo_set_bit(struct bpf_pifo_queue *queue, u32 rank)
^
static
>> kernel/bpf/pifomap.c:208:6: warning: no previous prototype for function 'pifo_clear_bit' [-Wmissing-prototypes]
void pifo_clear_bit(struct bpf_pifo_queue *queue, u32 rank)
^
kernel/bpf/pifomap.c:208:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void pifo_clear_bit(struct bpf_pifo_queue *queue, u32 rank)
^
static
2 warnings generated.


vim +/pifo_set_bit +197 kernel/bpf/pifomap.c

196
> 197 void pifo_set_bit(struct bpf_pifo_queue *queue, u32 rank)
198 {
199 u32 i;
200
201 for (i = queue->levels; i > 0; i--) {
202 unsigned long *bitmap = queue->lvl_bitmap[i-1];
203 set_bit(rank, bitmap);
204 rank /= BITS_PER_TYPE(long);
205 }
206 }
207
> 208 void pifo_clear_bit(struct bpf_pifo_queue *queue, u32 rank)
209 {
210 u32 i;
211
212 for (i = queue->levels; i > 0; i--) {
213 unsigned long *bitmap = queue->lvl_bitmap[i-1];
214 clear_bit(rank, bitmap);
215 rank /= BITS_PER_TYPE(long);
216
217 // another bit is set in this word, don't clear bit in higher
218 // level
219 if (*(bitmap + rank))
220 break;
221 }
222 }
223

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