lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <201812160524.1n4RI5Fj%fengguang.wu@intel.com>
Date:   Sun, 16 Dec 2018 05:59:29 +0800
From:   kbuild test robot <lkp@...el.com>
To:     Benjamin Bouvier <benjamin.bouvier@...ia.com>
Cc:     kbuild-all@...org, mingo@...hat.com, peterz@...radead.org,
        rostedt@...dmis.org, u.kleine-koenig@...gutronix.de,
        bigeasy@...utronix.de, pkondeti@...eaurora.org,
        alexander.sverdlin@...ia.com, linux-kernel@...r.kernel.org,
        Benjamin Bouvier <benjamin.bouvier@...ia.com>
Subject: Re: [PATCH] sched/debug: Add tracepoint for RT throttling

Hi Benjamin,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on tip/perf/core]
[also build test ERROR on v4.20-rc6 next-20181214]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Benjamin-Bouvier/sched-debug-Add-tracepoint-for-RT-throttling/20181216-050740
config: x86_64-randconfig-x001-201850 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

All errors (new ones prefixed by >>):

   In file included from include/linux/kernel.h:14:0,
                    from arch/x86/include/asm/percpu.h:45,
                    from arch/x86/include/asm/current.h:6,
                    from include/linux/sched.h:12,
                    from kernel//sched/sched.h:5,
                    from kernel//sched/rt.c:6:
   kernel//sched/rt.c: In function 'sched_rt_runtime_exceeded':
>> kernel//sched/rt.c:934:59: error: 'struct rq' has no member named 'cpu'
        rt_rq->rq->curr->pid, rt_rq->rq->curr->comm, rt_rq->rq->cpu);
                                                              ^
   include/linux/printk.h:372:26: note: in definition of macro 'printk_deferred_once'
      printk_deferred(fmt, ##__VA_ARGS__);  \
                             ^~~~~~~~~~~
   kernel//sched/rt.c:935:56: error: 'struct rq' has no member named 'cpu'
       trace_sched_rt_throttling(rt_rq->rq->curr, rt_rq->rq->cpu);
                                                           ^~

vim +934 kernel//sched/rt.c

   907	
   908	static int sched_rt_runtime_exceeded(struct rt_rq *rt_rq)
   909	{
   910		u64 runtime = sched_rt_runtime(rt_rq);
   911	
   912		if (rt_rq->rt_throttled)
   913			return rt_rq_throttled(rt_rq);
   914	
   915		if (runtime >= sched_rt_period(rt_rq))
   916			return 0;
   917	
   918		balance_runtime(rt_rq);
   919		runtime = sched_rt_runtime(rt_rq);
   920		if (runtime == RUNTIME_INF)
   921			return 0;
   922	
   923		if (rt_rq->rt_time > runtime) {
   924			struct rt_bandwidth *rt_b = sched_rt_bandwidth(rt_rq);
   925	
   926			/*
   927			 * Don't actually throttle groups that have no runtime assigned
   928			 * but accrue some time due to boosting.
   929			 */
   930			if (likely(rt_b->rt_runtime)) {
   931				rt_rq->rt_throttled = 1;
   932				printk_deferred_once(
   933					"sched: RT throttling activated for task pid %d (%s) on cpu:%d\n",
 > 934					rt_rq->rq->curr->pid, rt_rq->rq->curr->comm, rt_rq->rq->cpu);
   935				trace_sched_rt_throttling(rt_rq->rq->curr, rt_rq->rq->cpu);
   936			} else {
   937				/*
   938				 * In case we did anyway, make it go away,
   939				 * replenishment is a joke, since it will replenish us
   940				 * with exactly 0 ns.
   941				 */
   942				rt_rq->rt_time = 0;
   943			}
   944	
   945			if (rt_rq_throttled(rt_rq)) {
   946				sched_rt_rq_dequeue(rt_rq);
   947				return 1;
   948			}
   949		}
   950	
   951		return 0;
   952	}
   953	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Download attachment ".config.gz" of type "application/gzip" (29739 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ