[PATCH] gcc 3.1 breaks wchan

Anton Blanchard (anton@samba.org)
Thu, 25 Apr 2002 11:43:25 +1000


Hi,

I noticed on a ppc64 kernel compiled with gcc 3.1 that context_switch
was left out of line. It ended up outside of the
scheduling_functions_start_here/end_here placeholders which breaks
wchan.

This is one place where we require the code to be inline, so we should use
extern.

Anton

--- linux-2.5/kernel/sched.c Tue Apr 23 16:00:33 2002
+++ linux-2.5_work/kernel/sched.c Thu Apr 25 11:38:45 2002
@@ -405,7 +405,8 @@
}
#endif

-static inline void context_switch(task_t *prev, task_t *next)
+/* This must end up inline or our wchan handling will break, so use extern */
+extern inline void context_switch(task_t *prev, task_t *next)
{
struct mm_struct *mm = next->mm;
struct mm_struct *oldmm = prev->active_mm;
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/