This is a note to let you know that I've just added the patch titled

    perf: overflow/perf_count_sw_cpu_clock crashes recent kernels

to the 2.6.32-longterm tree which can be found at:
    
http://www.kernel.org/git/?p=linux/kernel/git/longterm/longterm-queue-2.6.32.git;a=summary

The filename of the patch is:
     perf-overflow-perf_count_sw_cpu_clock-crashes-recent-kernels.patch
and it can be found in the queue-2.6.32 subdirectory.

If you, or anyone else, feels it should not be added to the 2.6.32 longterm 
tree,
please let <sta...@kernel.org> know about it.


>From a.p.zijls...@chello.nl  Wed Aug  3 08:57:08 2011
From: Peter Zijlstra <a.p.zijls...@chello.nl>
Date: Wed, 03 Aug 2011 13:49:31 +0200
Subject: perf: overflow/perf_count_sw_cpu_clock crashes recent kernels
To: Greg KH <g...@kroah.com>
Cc: Vince Weaver <vweav...@eecs.utk.edu>, Ingo Molnar <mi...@elte.hu>, Paul 
Mackerras <pau...@samba.org>, linux-ker...@vger.kernel.org, Arnaldo Carvalho de 
Melo <a...@ghostprotocols.net>, stable <sta...@kernel.org>
Message-ID: <1312372171.1147.302.camel@twins>

From: Peter Zijlstra <a.p.zijls...@chello.nl>

The below patch is for -stable only, upstream has a much larger patch
that contains the below hunk in commit a8b0ca17b80e92faab46ee7179ba9e99ccb61233

Vince found that under certain circumstances software event overflows
go wrong and deadlock. Avoid trying to delete a timer from the timer
callback.

Reported-by: Vince Weaver <vweav...@eecs.utk.edu>
Signed-off-by: Peter Zijlstra <a.p.zijls...@chello.nl>
Signed-off-by: Greg Kroah-Hartman <gre...@suse.de>

---
 kernel/perf_event.c |    8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

--- a/kernel/perf_event.c
+++ b/kernel/perf_event.c
@@ -3694,12 +3694,8 @@ static int __perf_event_overflow(struct
        if (events && atomic_dec_and_test(&event->event_limit)) {
                ret = 1;
                event->pending_kill = POLL_HUP;
-               if (nmi) {
-                       event->pending_disable = 1;
-                       perf_pending_queue(&event->pending,
-                                          perf_pending_event);
-               } else
-                       perf_event_disable(event);
+               event->pending_disable = 1;
+               perf_pending_queue(&event->pending, perf_pending_event);
        }
 
        perf_event_output(event, nmi, data, regs);


Patches currently in longterm-queue-2.6.32 which might be from 
a.p.zijls...@chello.nl are

/home/gregkh/linux/longterm/longterm-queue-2.6.32/queue-2.6.32/perf-overflow-perf_count_sw_cpu_clock-crashes-recent-kernels.patch

_______________________________________________
stable mailing list
stable@linux.kernel.org
http://linux.kernel.org/mailman/listinfo/stable

Reply via email to