Skip to contentSkip to conversation

ring-buffer fix for 2.6.28

PATCH In review Steven Rostedt 3 participants 5 messages Nov 27, 2008

Subsystems (2)
lore
Share & tools
lore

Steven Rostedt

author maintainer
#0 lore raw

cover ring-buffer fix for 2.6.28

The following patch needs to go into 2.6.28. It protects against a recursion race that can happen when the scheduler is traced.

The following patches are in:

git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace.git

branch: devel

Lai Jiangshan (1):
ring-buffer: prevent recursion

----

 kernel/trace/ring_buffer.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
author maintainer
#1 lore raw

PATCH 1/1 ring-buffer: prevent recursion

From: Lai Jiangshan <[email protected]>

Impact: fix to recursion in function tracer with schedule

If the resched flag was set before we entered, then don't reschedule.

---
 kernel/trace/ring_buffer.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
kernel/trace/ring_buffer.c +1 -1
index f780e95..668bbb5 100644
@@ -1215,7 +1215,7 @@ ring_buffer_lock_reserve(struct ring_buffer *buffer,
 
  out:
 	if (resched)
-		preempt_enable_notrace();
+		preempt_enable_no_resched_notrace();
 	else
 		preempt_enable_notrace();
 	return NULL;
Signature · 3 lines
1.5.6.5

-- 
#2 lore raw
In reply to Steven Rostedt
Quoted 10 lines · Steven Rostedt

The following patch needs to go into 2.6.28. It protects against a recursion race that can happen when the scheduler is traced.

The following patches are in:

git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace.git

branch: devel

Quoted 6 lines

Lai Jiangshan (1):
ring-buffer: prevent recursion

----

 kernel/trace/ring_buffer.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

Is there something about git that causes (or forces) the use of patch 0/1 followed by patch 1/1? I find it terribly unwanted.

thanks,

Signature · 1 line
~Randy
author maintainer
#3 lore raw
Quoted 14 lines · Randy Dunlap
Quoted 13 lines · Steven Rostedt

The following patch needs to go into 2.6.28. It protects against a recursion race that can happen when the scheduler is traced.

The following patches are in:

git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace.git

branch: devel

Lai Jiangshan (1):
ring-buffer: prevent recursion

Quoted 7 lines
Quoted 3 lines

----

 kernel/trace/ring_buffer.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

Is there something about git that causes (or forces) the use of patch 0/1 followed by patch 1/1? I find it terribly unwanted.

It's my scripts that post. I should probably modify it so that if there is only one patch, that I append it to the prolog instead, and mail it out the old way. My scripts pull the patches out of my git tree and use quilt top post. I know git has a way to do that too, but I have not set that up.

-- Steve

#4 lore raw
In reply to Steven Rostedt
Quoted 2 lines · Steven Rostedt

The following patch needs to go into 2.6.28. It protects against a recursion race that can happen when the scheduler is traced.

thanks, i've applied Lai's patch from email to tip/tracing/urgent.

Ingo