[tip:numa/core] numa, sched: Eliminate unused functions

From: tip-bot for Ingo Molnar
Date: Wed Oct 24 2012 - 05:38:55 EST


Commit-ID: b6fc69b9e76352786cd945ce3175780fffb467f0
Gitweb: http://git.kernel.org/tip/b6fc69b9e76352786cd945ce3175780fffb467f0
Author: Ingo Molnar <mingo@xxxxxxxxxx>
AuthorDate: Wed, 24 Oct 2012 09:04:41 +0200
Committer: Ingo Molnar <mingo@xxxxxxxxxx>
CommitDate: Wed, 24 Oct 2012 09:11:16 +0200

numa, sched: Eliminate unused functions

Andrew Morton reported these allnoconfig warnings:

kernel/sched/fair.c:800: warning: 'task_h_load' declared 'static' but never defined
kernel/sched/fair.c:1004: warning: 'account_numa_enqueue' defined but not used

These are only used on CONFIG_SMP - fix it.

We should eventually resolve the Kconfig complexities here by turning
SMP (and NUMA) scheduling either into a separate source code file, or
by creating a single-model scheduler, which happens to build to a small
object file on !CONFIG_SMP or !CONFIG_NUMA kernels not via #ifdefs but
via more clever build time code elimination and zero-size data fields.

That's not a simple patch.

Reported-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Cc: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
Cc: Andrea Arcangeli <aarcange@xxxxxxxxxx>
Cc: Rik van Riel <riel@xxxxxxxxxx>
Link: http://lkml.kernel.org/n/tip-wyctbug9qKulTs0umsxjyixi@xxxxxxxxxxxxxx
Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>
---
kernel/sched/fair.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index dea3ca6..41ad458 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -797,7 +797,9 @@ update_stats_curr_start(struct cfs_rq *cfs_rq, struct sched_entity *se)
* have.
*/

+#ifdef CONFIG_SMP
static unsigned long task_h_load(struct task_struct *p);
+#endif

#ifdef CONFIG_SCHED_NUMA
static struct list_head *account_numa_enqueue(struct rq *rq, struct task_struct *p)
@@ -995,10 +997,12 @@ void task_tick_numa(struct rq *rq, struct task_struct *curr)
}
}
#else
+#ifdef CONFIG_SMP
static struct list_head *account_numa_enqueue(struct rq *rq, struct task_struct *p)
{
return NULL;
}
+#endif

static void account_numa_dequeue(struct rq *rq, struct task_struct *p)
{
@@ -3760,12 +3764,13 @@ static inline void update_shares(int cpu)
static inline void update_h_load(long cpu)
{
}
-
+#ifdef CONFIG_SMP
static unsigned long task_h_load(struct task_struct *p)
{
return p->se.load.weight;
}
#endif
+#endif

/********** Helpers for find_busiest_group ************************/
/*
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/