All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH -tip] x86: hw-breakpoints: Actually flush thread breakpoints in flush_thread().
@ 2009-10-05 10:23 Paul Mundt
  2009-10-05 10:49 ` K.Prasad
  2009-11-21 13:36 ` [tip:perf/core] x86/hw-breakpoints: " tip-bot for Paul Mundt
  0 siblings, 2 replies; 11+ messages in thread
From: Paul Mundt @ 2009-10-05 10:23 UTC (permalink / raw)
  To: K.Prasad, Ingo Molnar; +Cc: Alan Stern, Frederic Weisbecker, linux-kernel

[ I noticed this whilst hacking up SH support, applies to the current
  tracing/hw-breakpoints topic branch. ]

flush_thread() tries to do a TIF_DEBUG check before calling in to
flush_thread_hw_breakpoint() (which subsequently clears the thread flag),
but for some reason, the x86 code is manually clearing TIF_DEBUG
immediately before the test, so this path will never be taken.

This kills off the erroneous clear_tsk_thread_flag() and lets
flush_thread_hw_breakpoint() actually get invoked.

Presumably folks were getting lucky with testing and the
free_thread_info() -> free_thread_xstate() path was taking care of the
flush there.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>

---

 arch/x86/kernel/process.c |    2 --
 1 file changed, 2 deletions(-)

diff --git a/arch/x86/kernel/process.c b/arch/x86/kernel/process.c
index 1092a1a..c62f647 100644
--- a/arch/x86/kernel/process.c
+++ b/arch/x86/kernel/process.c
@@ -110,8 +110,6 @@ void flush_thread(void)
 	}
 #endif
 
-	clear_tsk_thread_flag(tsk, TIF_DEBUG);
-
 	if (unlikely(test_tsk_thread_flag(tsk, TIF_DEBUG)))
 		flush_thread_hw_breakpoint(tsk);
 	memset(tsk->thread.tls_array, 0, sizeof(tsk->thread.tls_array));

^ permalink raw reply related	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2009-11-21 13:37 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-10-05 10:23 [PATCH -tip] x86: hw-breakpoints: Actually flush thread breakpoints in flush_thread() Paul Mundt
2009-10-05 10:49 ` K.Prasad
2009-10-09  3:40   ` Paul Mundt
2009-10-09  7:53     ` Frederic Weisbecker
2009-10-17 23:42     ` Frederic Weisbecker
2009-10-18  6:25       ` Paul Mundt
2009-10-18 16:43         ` Frederic Weisbecker
2009-10-19 19:48         ` Frederic Weisbecker
2009-10-19 23:24           ` Paul Mundt
2009-10-20  7:49             ` Frederic Weisbecker
2009-11-21 13:36 ` [tip:perf/core] x86/hw-breakpoints: " tip-bot for Paul Mundt

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.