Re: [patch] Real-Time Preemption, -RT-2.6.12-rc6-V0.7.47-20

From: Michal Schmidt
Date: Tue Jun 07 2005 - 06:52:36 EST


Ingo Molnar wrote:
i have released the -V0.7.47-20 Real-Time Preemption patch, which can be downloaded from the usual place:

It doesn't build with CONFIG_RT_DEADLOCK_DETECT:
CC arch/i386/kernel/cpu/mtrr/main.o
arch/i386/kernel/cpu/mtrr/main.c:52: error: syntax error at '#' token
arch/i386/kernel/cpu/mtrr/main.c:52: error: `lockname' undeclared here (not in a function)
arch/i386/kernel/cpu/mtrr/main.c:52: error: initializer element is not
constant
arch/i386/kernel/cpu/mtrr/main.c:52: error: (near initialization for
`main_lock.lock.name')
arch/i386/kernel/cpu/mtrr/main.c:52: error: initializer element is not
constant
arch/i386/kernel/cpu/mtrr/main.c:52: error: (near initialization for
`main_lock.lock')
make[3]: *** [arch/i386/kernel/cpu/mtrr/main.o] Error 1


Patch attached.

Michal

--- linux-RT.mich/include/linux/rt_lock.h.orig 2005-06-07 13:45:18.000000000 +0200
+++ linux-RT.mich/include/linux/rt_lock.h 2005-06-07 13:44:02.000000000 +0200
@@ -97,10 +97,10 @@ struct rt_mutex_waiter {
};

#ifdef CONFIG_RT_DEADLOCK_DETECT
-# define __RT_MUTEX_DEADLOCK_DETECT_INITIALIZER \
+# define __RT_MUTEX_DEADLOCK_DETECT_INITIALIZER(lockname) \
, .name = #lockname, .file = __FILE__, .line = __LINE__
#else
-# define __RT_MUTEX_DEADLOCK_DETECT_INITIALIZER
+# define __RT_MUTEX_DEADLOCK_DETECT_INITIALIZER(lockname)
#endif

#ifdef CONFIG_DEBUG_RT_LOCKING_MODE
@@ -114,7 +114,7 @@ struct rt_mutex_waiter {
#define __RT_MUTEX_INITIALIZER(lockname) \
{ .wait_lock = RAW_SPIN_LOCK_UNLOCKED, \
.wait_list = PLIST_INIT((lockname).wait_list, MAX_PRIO) \
- __RT_MUTEX_DEADLOCK_DETECT_INITIALIZER \
+ __RT_MUTEX_DEADLOCK_DETECT_INITIALIZER(lockname) \
__RT_MUTEX_DEBUG_RT_LOCKING_MODE_INITIALIZER }

/*