summaryrefslogtreecommitdiffstats
path: root/patches/0003-x86-kprobes-Remove-remove-bogus-preempt_enable.patch
blob: 996a82e1e76186fc62ac996c725fe09d361ca514 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
From 11fc6e37abfc4da412482a87dd9852045c42cc45 Mon Sep 17 00:00:00 2001
From: Thomas Gleixner <tglx@linutronix.de>
Date: Thu, 17 Mar 2011 11:02:15 +0100
Subject: [PATCH 003/274] x86: kprobes: Remove remove bogus preempt_enable

The CONFIG_PREEMPT=n section of setup_singlestep() contains:

    preempt_enable_no_resched();

That's bogus as it is asymetric - no preempt_disable() - and it just
never blew up because preempt_enable_no_resched() is a NOP when
CONFIG_PREEMPT=n. Remove it.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
---
 arch/x86/kernel/kprobes.c |    1 -
 1 file changed, 1 deletion(-)

diff --git a/arch/x86/kernel/kprobes.c b/arch/x86/kernel/kprobes.c
index e213fc8..b9edf1a 100644
--- a/arch/x86/kernel/kprobes.c
+++ b/arch/x86/kernel/kprobes.c
@@ -486,7 +486,6 @@ setup_singlestep(struct kprobe *p, struct pt_regs *regs, struct kprobe_ctlblk *k
 		 * stepping.
 		 */
 		regs->ip = (unsigned long)p->ainsn.insn;
-		preempt_enable_no_resched();
 		return;
 	}
 #endif
-- 
1.7.10.4