Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5904b3b8 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge branch 'perf-fixes-for-linus' of...

Merge branch 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip

* 'perf-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  tracing: Fix undeclared ENOSYS in include/linux/tracepoint.h
  perf record: prevent kill(0, SIGTERM);
  perf session: Remove threads from tree on PERF_RECORD_EXIT
  perf/tracing: Fix regression of perf losing kprobe events
  perf_events: Fix Intel Westmere event constraints
  perf record: Don't call newt functions when not initialized
parents f3866db8 b70e4f05
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -72,6 +72,7 @@ static struct event_constraint intel_westmere_event_constraints[] =
	INTEL_EVENT_CONSTRAINT(0x51, 0x3), /* L1D */
	INTEL_EVENT_CONSTRAINT(0x60, 0x1), /* OFFCORE_REQUESTS_OUTSTANDING */
	INTEL_EVENT_CONSTRAINT(0x63, 0x3), /* CACHE_LOCK_CYCLES */
	INTEL_EVENT_CONSTRAINT(0xb3, 0x1), /* SNOOPQ_REQUEST_OUTSTANDING */
	EVENT_CONSTRAINT_END
};

+1 −0
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@
 * See the file COPYING for more details.
 */

#include <linux/errno.h>
#include <linux/types.h>
#include <linux/rcupdate.h>

+3 −1
Original line number Diff line number Diff line
@@ -96,7 +96,9 @@ int perf_trace_init(struct perf_event *p_event)
	mutex_lock(&event_mutex);
	list_for_each_entry(tp_event, &ftrace_events, list) {
		if (tp_event->event.type == event_id &&
		    tp_event->class && tp_event->class->perf_probe &&
		    tp_event->class &&
		    (tp_event->class->perf_probe ||
		     tp_event->class->reg) &&
		    try_module_get(tp_event->mod)) {
			ret = perf_trace_event_init(tp_event, p_event);
			break;
+1 −1
Original line number Diff line number Diff line
@@ -193,7 +193,7 @@ static void sig_handler(int sig)

static void sig_atexit(void)
{
	if (child_pid != -1)
	if (child_pid > 0)
		kill(child_pid, SIGTERM);

	if (signr == -1)
+3 −1
Original line number Diff line number Diff line
@@ -538,8 +538,10 @@ int event__process_task(event_t *self, struct perf_session *session)
	dump_printf("(%d:%d):(%d:%d)\n", self->fork.pid, self->fork.tid,
		    self->fork.ppid, self->fork.ptid);

	if (self->header.type == PERF_RECORD_EXIT)
	if (self->header.type == PERF_RECORD_EXIT) {
		perf_session__remove_thread(session, thread);
		return 0;
	}

	if (thread == NULL || parent == NULL ||
	    thread__fork(thread, parent) < 0) {
Loading