* xavier droubay <xavier.droubay@xxxxxxxxx> [2008-09-08 03:06:51]: > Hello, > > I experienced this "rtmutex.c:743" known bug with rt3 patch, using > > http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.26.3.tar.bz2 > http://rt.et.redhat.com/download/patch-2.6.26.3-rt3.bz2 > > I compiled this kernel with the "make-kpkg" debian utility. > > I first compiled this kernel with NO SMP, NO HIGHMEM, and partial ACPI > (without fan, processor, ... modules). Attached file > "config-2.6.26.3-rt3lowlty.frwr.gz". > I didn't experience any problem with this kernel. > > I then enabled SMP and HIGHMEM, and experienced "rtmutex.c:743" BUG. > Attached files > "config-2.6.26.3-rt3rt-smp-hm.gz" and "dmesg.gz" for some BUGGY message. > > > I have seen somewhere on the archive, that some people still > experienced problems with SMP. > I guess no fix has been done from rt3 to rt7 patch. Can you confirm? > > If so, which recent kernel should I use in order to get smp and rt > running without problems? > This simple patch should solve the above problem. Seeing the config, its seems to be a 32bit box. It convert tlbstate_lock spin_lock to raw_spin_lock. Preemption has already been disabled, hence this change shouldn't affect latency numbers. Signed-Off-By: Chirag <chirag@xxxxxxxxxxxxxxxxxx> diff --git a/arch/x86/kernel/tlb_32.c b/arch/x86/kernel/tlb_32.c index 9bb2363..228849c 100644 --- a/arch/x86/kernel/tlb_32.c +++ b/arch/x86/kernel/tlb_32.c @@ -23,7 +23,7 @@ DEFINE_PER_CPU(struct tlb_state, cpu_tlbstate) static cpumask_t flush_cpumask; static struct mm_struct *flush_mm; static unsigned long flush_va; -static DEFINE_SPINLOCK(tlbstate_lock); +static DEFINE_RAW_SPINLOCK(tlbstate_lock); /* * We cannot call mmdrop() because we are in interrupt context, -- To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html