Re: [PATCH 2/4] sched/fair: Make CFS bandwidth controller burstable

From: kernel test robot
Date: Wed Jan 20 2021 - 12:15:40 EST

Hi Huaixin,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on tip/sched/core]
[also build test WARNING on tip/master linux/master linus/master v5.11-rc4 next-20210120]
[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]

base: 65bcf072e20ed7597caa902f170f293662b0af3c
config: x86_64-randconfig-a001-20210120 (attached as .config)
compiler: clang version 12.0.0 ( 22b68440e1647e16b5ee24b924986207173c02d1)
reproduce (this is a W=1 build):
wget -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
git remote add linux-review
git fetch --no-tags linux-review Huaixin-Chang/sched-fair-Introduce-primitives-for-CFS-bandwidth-burst/20210120-212731
git checkout a62cc8421988be29990ad86e33e877fb8776f8bd
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64

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/sched/fair.c:4623:6: warning: no previous prototype for function '__refill_cfs_bandwidth_runtime' [-Wmissing-prototypes]
void __refill_cfs_bandwidth_runtime(struct cfs_bandwidth *cfs_b, u64 overrun)
kernel/sched/fair.c:4623:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
void __refill_cfs_bandwidth_runtime(struct cfs_bandwidth *cfs_b, u64 overrun)
kernel/sched/fair.c:2985:20: warning: unused function 'account_numa_enqueue' [-Wunused-function]
static inline void account_numa_enqueue(struct rq *rq, struct task_struct *p)
kernel/sched/fair.c:2989:20: warning: unused function 'account_numa_dequeue' [-Wunused-function]
static inline void account_numa_dequeue(struct rq *rq, struct task_struct *p)
kernel/sched/fair.c:2993:20: warning: unused function 'update_scan_period' [-Wunused-function]
static inline void update_scan_period(struct task_struct *p, int new_cpu)
kernel/sched/fair.c:4730:19: warning: unused function 'throttled_lb_pair' [-Wunused-function]
static inline int throttled_lb_pair(struct task_group *tg,
5 warnings generated.

vim +/__refill_cfs_bandwidth_runtime +4623 kernel/sched/fair.c

4616 /*
4617 * Replenish runtime according to assigned quota. We use sched_clock_cpu
4618 * directly instead of rq->clock to avoid adding additional synchronization
4619 * around rq->lock.
4620 *
4621 * requires cfs_b->lock
4622 */
> 4623 void __refill_cfs_bandwidth_runtime(struct cfs_bandwidth *cfs_b, u64 overrun)
4624 {
4625 u64 refill;
4627 if (cfs_b->quota != RUNTIME_INF) {
4629 if (!sysctl_sched_cfs_bw_burst_enabled) {
4630 cfs_b->runtime = cfs_b->quota;
4631 return;
4632 }
4634 overrun = min(overrun, cfs_b->max_overrun);
4635 refill = cfs_b->quota * overrun;
4636 cfs_b->runtime += refill;
4637 cfs_b->runtime = min(cfs_b->runtime, cfs_b->buffer);
4638 }
4639 }

0-DAY CI Kernel Test Service, Intel Corporation

Attachment: .config.gz
Description: application/gzip