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

Commit c6704cbf authored by Linux Build Service Account's avatar Linux Build Service Account Committed by Gerrit - the friendly Code Review server
Browse files

Merge "perf: stop deadlock if attempt to bring cpu up fails"

parents 272ee3f1 5f71e693
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -552,7 +552,6 @@ static void armpmu_init(struct arm_pmu *armpmu)
		.stop		= armpmu_stop,
		.read		= armpmu_read,
		.filter_match	= armpmu_filter_match,
		.events_across_hotplug = 1,
	};
}

+1 −38
Original line number Diff line number Diff line
@@ -1693,32 +1693,6 @@ static int __perf_remove_from_context(void *info)
	return 0;
}


#ifdef CONFIG_SMP
static void perf_retry_remove(struct perf_event *event,
			      struct remove_event *rep)
{
	int up_ret;
	/*
	 * CPU was offline. Bring it online so we can
	 * gracefully exit a perf context.
	 */
	up_ret = cpu_up(event->cpu);
	if (!up_ret)
		/* Try the remove call once again. */
		cpu_function_call(event->cpu, __perf_remove_from_context,
				  rep);
	else
		pr_err("Failed to bring up CPU: %d, ret: %d\n",
		       event->cpu, up_ret);
}
#else
static void perf_retry_remove(struct perf_event *event,
			      struct remove_event *rep)
{
}
#endif

/*
 * Remove the event from a task's (or a CPU's) list of events.
 *
@@ -1754,9 +1728,6 @@ static void __ref perf_remove_from_context(struct perf_event *event,
		 */
		ret = cpu_function_call(event->cpu, __perf_remove_from_context,
					&re);
		if (ret == -ENXIO)
			perf_retry_remove(event, &re);

		return;
	}

@@ -7138,8 +7109,6 @@ static struct pmu perf_swevent = {
	.start		= perf_swevent_start,
	.stop		= perf_swevent_stop,
	.read		= perf_swevent_read,

	.events_across_hotplug = 1,
};

#ifdef CONFIG_EVENT_TRACING
@@ -7261,8 +7230,6 @@ static struct pmu perf_tracepoint = {
	.start		= perf_swevent_start,
	.stop		= perf_swevent_stop,
	.read		= perf_swevent_read,

	.events_across_hotplug = 1,
};

static inline void perf_tp_register(void)
@@ -7550,8 +7517,6 @@ static struct pmu perf_cpu_clock = {
	.start		= cpu_clock_event_start,
	.stop		= cpu_clock_event_stop,
	.read		= cpu_clock_event_read,

	.events_across_hotplug = 1,
};

/*
@@ -7633,8 +7598,6 @@ static struct pmu perf_task_clock = {
	.start		= task_clock_event_start,
	.stop		= task_clock_event_stop,
	.read		= task_clock_event_read,

	.events_across_hotplug = 1,
};

static void perf_pmu_nop_void(struct pmu *pmu)
+0 −2
Original line number Diff line number Diff line
@@ -614,8 +614,6 @@ static struct pmu perf_breakpoint = {
	.start		= hw_breakpoint_start,
	.stop		= hw_breakpoint_stop,
	.read		= hw_breakpoint_pmu_read,

	.events_across_hotplug = 1,
};

int __init init_hw_breakpoint(void)