[lkml]   [2008]   [Sep]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Patch in this message
Subject[PATCH] Convert tlbstate_lock spin_lock to raw_spin_lock
* xavier droubay <> [2008-09-08 03:06:51]:

> Hello,
> I experienced this "rtmutex.c:743" known bug with rt3 patch, using
> 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-".
> I didn't experience any problem with this kernel.
> I then enabled SMP and HIGHMEM, and experienced "rtmutex.c:743" BUG.
> Attached files
> "config-" 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 <>

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,

 \ /
  Last update: 2008-09-08 09:43    [W:0.022 / U:7.800 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site