aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/sched/stats.h
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/sched/stats.h')
-rw-r--r--kernel/sched/stats.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/kernel/sched/stats.h b/kernel/sched/stats.h
index b0fbc7632de5..70b3b6a20fb0 100644
--- a/kernel/sched/stats.h
+++ b/kernel/sched/stats.h
@@ -29,9 +29,10 @@ rq_sched_info_dequeued(struct rq *rq, unsigned long long delta)
29 if (rq) 29 if (rq)
30 rq->rq_sched_info.run_delay += delta; 30 rq->rq_sched_info.run_delay += delta;
31} 31}
32# define schedstat_inc(rq, field) do { (rq)->field++; } while (0) 32# define schedstat_enabled() static_branch_unlikely(&sched_schedstats)
33# define schedstat_add(rq, field, amt) do { (rq)->field += (amt); } while (0) 33# define schedstat_inc(rq, field) do { if (schedstat_enabled()) { (rq)->field++; } } while (0)
34# define schedstat_set(var, val) do { var = (val); } while (0) 34# define schedstat_add(rq, field, amt) do { if (schedstat_enabled()) { (rq)->field += (amt); } } while (0)
35# define schedstat_set(var, val) do { if (schedstat_enabled()) { var = (val); } } while (0)
35#else /* !CONFIG_SCHEDSTATS */ 36#else /* !CONFIG_SCHEDSTATS */
36static inline void 37static inline void
37rq_sched_info_arrive(struct rq *rq, unsigned long long delta) 38rq_sched_info_arrive(struct rq *rq, unsigned long long delta)
@@ -42,6 +43,7 @@ rq_sched_info_dequeued(struct rq *rq, unsigned long long delta)
42static inline void 43static inline void
43rq_sched_info_depart(struct rq *rq, unsigned long long delta) 44rq_sched_info_depart(struct rq *rq, unsigned long long delta)
44{} 45{}
46# define schedstat_enabled() 0
45# define schedstat_inc(rq, field) do { } while (0) 47# define schedstat_inc(rq, field) do { } while (0)
46# define schedstat_add(rq, field, amt) do { } while (0) 48# define schedstat_add(rq, field, amt) do { } while (0)
47# define schedstat_set(var, val) do { } while (0) 49# define schedstat_set(var, val) do { } while (0)