[ammarfaizi2-block:tglx/devel/hrtimer 11/11] kernel/time/hrtimer.c:1087:12: sparse: sparse: function 'hrtimer_forward_now' with external linkage has definition

From: kernel test robot
Date: Sat Jan 01 2022 - 10:33:04 EST


tree: https://github.com/ammarfaizi2/linux-block tglx/devel/hrtimer
head: 9ad8708a7b7f585067bef93398ca52581ab4474c
commit: 9ad8708a7b7f585067bef93398ca52581ab4474c [11/11] hrtimer: Make hrtimer_forward() private to core timer code
config: i386-randconfig-s001-20211231 (https://download.01.org/0day-ci/archive/20220101/202201012226.XYB7q71g-lkp@xxxxxxxxx/config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.4-dirty
# https://github.com/ammarfaizi2/linux-block/commit/9ad8708a7b7f585067bef93398ca52581ab4474c
git remote add ammarfaizi2-block https://github.com/ammarfaizi2/linux-block
git fetch --no-tags ammarfaizi2-block tglx/devel/hrtimer
git checkout 9ad8708a7b7f585067bef93398ca52581ab4474c
# save the config file to linux build tree
mkdir build_dir
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=i386 SHELL=/bin/bash kernel/time/

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


sparse warnings: (new ones prefixed by >>)
>> kernel/time/hrtimer.c:1087:12: sparse: sparse: function 'hrtimer_forward_now' with external linkage has definition

vim +/hrtimer_forward_now +1087 kernel/time/hrtimer.c

1070
1071 /**
1072 * hrtimer_forward_now - forward the timer expiry so it expires after now
1073 * @timer: hrtimer to forward
1074 * @interval: the interval to forward
1075 *
1076 * Forward the timer expiry so it will expire after the current time
1077 * of the hrtimer clock base. Returns the number of overruns.
1078 *
1079 * Can be safely called from the callback function of @timer. If
1080 * called from other contexts @timer must neither be enqueued nor
1081 * running the callback and the caller needs to take care of
1082 * serialization.
1083 *
1084 * Note: This only updates the timer expiry value and does not requeue
1085 * the timer.
1086 */
> 1087 extern u64 hrtimer_forward_now(struct hrtimer *timer, ktime_t interval)
1088 {
1089 return hrtimer_forward(timer, timer->base->get_time(), interval);
1090 }
1091 EXPORT_SYMBOL_GPL(hrtimer_forward_now);
1092

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