mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-07 19:30:30 +09:00
ANDROID: schedstats/eas: guard properly to avoid breaking non-smp schedstats users
Add appropriate #ifdef guards to ensure the smp-only easstats structs are not used when smp is not enabled. Arnd got a report from buildbot, analysed it, and pointed out exactly what the issue was. Reported-by: "Arnd Bergmann" <arnd@arndb.de> Suggested-by: "Arnd Bergmann" <arnd@arndb.de> Fixes:4b85765a3d("sched/fair: Add eas (& cas) specific rq, sd and task stats") Signed-off-by: Chris Redpath <chris.redpath@arm.com> Change-Id: I60554dea20137f6774db3f59b4afd40a06554cfc (cherry picked from commitfce0ecf04a) [Fixed cherry-pick issue] Signed-off-by: Quentin Perret <quentin.perret@arm.com>
This commit is contained in:
committed by
Andres Oportus
parent
293edee1ef
commit
385dcecbfd
@@ -768,9 +768,10 @@ struct rq {
|
||||
/* try_to_wake_up() stats */
|
||||
unsigned int ttwu_count;
|
||||
unsigned int ttwu_local;
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
struct eas_stats eas_stats;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
struct llist_head wake_list;
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
*/
|
||||
#define SCHEDSTAT_VERSION 15
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
static inline void show_easstat(struct seq_file *seq, struct eas_stats *stats)
|
||||
{
|
||||
/* eas-specific runqueue stats */
|
||||
@@ -31,6 +32,7 @@ static inline void show_easstat(struct seq_file *seq, struct eas_stats *stats)
|
||||
seq_printf(seq, "%llu %llu\n",
|
||||
stats->cas_attempts, stats->cas_count);
|
||||
}
|
||||
#endif
|
||||
|
||||
static int show_schedstat(struct seq_file *seq, void *v)
|
||||
{
|
||||
@@ -59,9 +61,9 @@ static int show_schedstat(struct seq_file *seq, void *v)
|
||||
|
||||
seq_printf(seq, "\n");
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
show_easstat(seq, &rq->eas_stats);
|
||||
|
||||
#ifdef CONFIG_SMP
|
||||
/* domain-specific stats */
|
||||
rcu_read_lock();
|
||||
for_each_domain(cpu, sd) {
|
||||
|
||||
Reference in New Issue
Block a user