Re: [PATCH 08/10] psi: pressure stall information for CPU, memory, and IO
From: Peter Zijlstra <peterz@infradead.org>
Date: 2018-07-17 14:22:15
Also in:
linux-mm, lkml
From: Peter Zijlstra <peterz@infradead.org>
Date: 2018-07-17 14:22:15
Also in:
linux-mm, lkml
On Thu, Jul 12, 2018 at 01:29:40PM -0400, Johannes Weiner wrote:
diff --git a/include/linux/sched/stat.h b/include/linux/sched/stat.h index 04f1321d14c4..ac39435d1521 100644 --- a/include/linux/sched/stat.h +++ b/include/linux/sched/stat.h@@ -28,10 +28,14 @@ static inline int sched_info_on(void) return 1; #elif defined(CONFIG_TASK_DELAY_ACCT) extern int delayacct_on; + if (delayacct_on) + return 1; +#elif defined(CONFIG_PSI) + extern int psi_disabled; + if (!psi_disabled) + return 1; #endif + return 0; }
Doesn't that want to be something like:
static inline bool sched_info_on(void)
{
#ifdef CONFIG_SCHEDSTAT
return true;
#else /* !SCHEDSTAT */
#ifdef CONFIG_TASK_DELAY_ACCT
extern int delayacct_on;
if (delayacct_on)
return true;
#endif /* DELAYACCT */
#ifdef CONFIG_PSI
extern int psi_disabled;
if (!psi_disabled)
return true;
#endif
return false;
#endif /* !SCHEDSTATE */
}
Such that if you build a TASK_DELAY_ACCT && PSI kernel, and boot with
nodelayacct, you still get sched_info_on().