linux/debian/patches/features/all/rt/mm-page-alloc-use-local-loc...

29 lines
1.1 KiB
Diff

Subject: mm: page_alloc: Use local_lock_on() instead of plain spinlock
From: Thomas Gleixner <tglx@linutronix.de>
Date: Thu, 27 Sep 2012 11:11:46 +0200
Origin: https://www.kernel.org/pub/linux/kernel/projects/rt/4.9/older/patches-4.9-rt1.tar.xz
The plain spinlock while sufficient does not update the local_lock
internals. Use a proper local_lock function instead to ease debugging.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
---
mm/page_alloc.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
--- a/mm/page_alloc.c
+++ b/mm/page_alloc.c
@@ -286,9 +286,9 @@ static DEFINE_LOCAL_IRQ_LOCK(pa_lock);
#ifdef CONFIG_PREEMPT_RT_BASE
# define cpu_lock_irqsave(cpu, flags) \
- spin_lock_irqsave(&per_cpu(pa_lock, cpu).lock, flags)
+ local_lock_irqsave_on(pa_lock, flags, cpu)
# define cpu_unlock_irqrestore(cpu, flags) \
- spin_unlock_irqrestore(&per_cpu(pa_lock, cpu).lock, flags)
+ local_unlock_irqrestore_on(pa_lock, flags, cpu)
#else
# define cpu_lock_irqsave(cpu, flags) local_irq_save(flags)
# define cpu_unlock_irqrestore(cpu, flags) local_irq_restore(flags)