A quick question about the usefulness of making rt_task() checks unlikely in sched-unlikely-rt_task.patch which is in -mm
quote:
diff -puN include/linux/sched.h~sched-unlikely-rt_task include/linux/sched.h
--- 25/include/linux/sched.h~sched-unlikely-rt_task Fri Jul 2 16:33:01 2004
+++ 25-akpm/include/linux/sched.h Fri Jul 2 16:33:01 2004
@@ -300,7 +300,7 @@ struct signal_struct {
#define MAX_PRIO (MAX_RT_PRIO + 40)
-#define rt_task(p) ((p)->prio < MAX_RT_PRIO)
+#define rt_task(p) (unlikely((p)->prio < MAX_RT_PRIO))
/*
* Some day this will be a full-fledged user tracking system..
---
While rt tasks are normally unlikely, what happens in the case when you are scheduling one or many running rt_tasks and the majority of your scheduling is rt? Would it be such a good idea in this setting that it is always hitting the slow path of branching all the time?