Re: [patch] Real-Time Preemption, -RT-2.6.11-rc3-V0.7.38-01

From: Valdis . Kletnieks
Date: Sat Feb 05 2005 - 23:23:59 EST


On Fri, 04 Feb 2005 11:03:47 +0100, Ingo Molnar said:
>
> i have released the -V0.7.38-01 Real-Time Preemption patch, which can be

Building with:

# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
CONFIG_PREEMPT_DESKTOP=y
# CONFIG_PREEMPT_RT is not set

CC kernel/sched.o
kernel/sched.c:314:1: warning: "_finish_arch_switch" redefined
kernel/sched.c:306:1: warning: this is the location of the previous definition

caused by this part of the patch:

@@ -288,12 +295,20 @@ static DEFINE_PER_CPU(struct runqueue, r
#define task_rq(p) cpu_rq(task_cpu(p))
#define cpu_curr(cpu) (cpu_rq(cpu)->curr)

+#ifdef CONFIG_PREEMPT_RT
+# ifdef prepare_arch_switch
+# error FIXME
+# endif
+#else
+# define _finish_arch_switch finish_arch_switch
+#endif
+
/*
* Default context-switch locking:
*/
#ifndef prepare_arch_switch
# define prepare_arch_switch(rq, next) do { } while (0)
-# define finish_arch_switch(rq, next) spin_unlock_irq(&(rq)->lock)
+# define _finish_arch_switch(rq, next) spin_unlock(&(rq)->lock)
# define task_running(rq, p) ((rq)->curr == (p))
#endif


What was intended for non-RT builds?

Attachment: pgp00000.pgp
Description: PGP signature