diff for duplicates of <20160831144128.GE29505@arm.com> diff --git a/a/1.txt b/N1/1.txt index 2ced420..12b3da7 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -2,19 +2,19 @@ On Tue, Aug 30, 2016 at 06:32:25PM +0100, Mark Rutland wrote: > On Fri, Aug 26, 2016 at 10:48:00AM +0100, Will Deacon wrote: > > On Fri, Aug 19, 2016 at 03:25:14PM +0100, Mark Rutland wrote: > > > On Thu, Aug 18, 2016 at 01:24:38PM -0700, Yabin Cui wrote: -> > > > If the cpu pmu is using a percpu irq: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -> > > > ? ? ?? -> > > > 1. When a cpu is down, we should disable pmu irq on ? ? ? ? ? ? ? ? ? ? ? -> > > > that cpu. Otherwise, if the cpu is still down when ? ? ? ? ? ? ? ? ? ? ? ? -> > > > the last perf event is released, the pmu irq can't ? ? ? ? ? ? ? ? ? ? ? ? -> > > > be freed. Because the irq is still enabled on the ? ? ? ? ? ? ? ? ? ? ? ? -> > > > offlined cpu. And following perf_event_open() ? ? ? ? ? ? ? ? ? ? ? ? ? ? -> > > > syscalls will fail. ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? +> > > > If the cpu pmu is using a percpu irq: +> > > > +> > > > 1. When a cpu is down, we should disable pmu irq on +> > > > that cpu. Otherwise, if the cpu is still down when +> > > > the last perf event is released, the pmu irq can't +> > > > be freed. Because the irq is still enabled on the +> > > > offlined cpu. And following perf_event_open() +> > > > syscalls will fail. > > > > -> > > > 2. When a cpu is up, we should enable pmu irq on ? ? ? ? ? ? ? ? ? ? ? ? ? -> > > > that cpu. Otherwise, profiling tools can't sample ? ? ? ? ? ? ? ? ? ? ? ? -> > > > events on the cpu before all perf events are ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -> > > > released, because pmu irq is disabled on that cpu. ? ? ? ? ? ? ? ? ? ? ? ? +> > > > 2. When a cpu is up, we should enable pmu irq on +> > > > that cpu. Otherwise, profiling tools can't sample +> > > > events on the cpu before all perf events are +> > > > released, because pmu irq is disabled on that cpu. > > [...] > diff --git a/a/content_digest b/N1/content_digest index fbd5cd3..bf04779 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -2,29 +2,32 @@ "ref\020160819142514.GB28422@leverpostej\0" "ref\020160826094800.GD13554@arm.com\0" "ref\020160830173224.GN1223@leverpostej\0" - "From\0will.deacon@arm.com (Will Deacon)\0" - "Subject\0[PATCH] arm/perf: Fix pmu percpu irq handling at hotplug.\0" + "From\0Will Deacon <will.deacon@arm.com>\0" + "Subject\0Re: [PATCH] arm/perf: Fix pmu percpu irq handling at hotplug.\0" "Date\0Wed, 31 Aug 2016 15:41:28 +0100\0" - "To\0linux-arm-kernel@lists.infradead.org\0" + "To\0Mark Rutland <mark.rutland@arm.com>\0" + "Cc\0Yabin Cui <yabinc@google.com>" + linux-kernel@vger.kernel.org + " linux-arm-kernel@lists.infradead.org\0" "\00:1\0" "b\0" "On Tue, Aug 30, 2016 at 06:32:25PM +0100, Mark Rutland wrote:\n" "> On Fri, Aug 26, 2016 at 10:48:00AM +0100, Will Deacon wrote:\n" "> > On Fri, Aug 19, 2016 at 03:25:14PM +0100, Mark Rutland wrote:\n" "> > > On Thu, Aug 18, 2016 at 01:24:38PM -0700, Yabin Cui wrote:\n" - "> > > > If the cpu pmu is using a percpu irq: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n" - "> > > > ? ? ??\n" - "> > > > 1. When a cpu is down, we should disable pmu irq on ? ? ? ? ? ? ? ? ? ? ?\n" - "> > > > that cpu. Otherwise, if the cpu is still down when ? ? ? ? ? ? ? ? ? ? ? ?\n" - "> > > > the last perf event is released, the pmu irq can't ? ? ? ? ? ? ? ? ? ? ? ?\n" - "> > > > be freed. Because the irq is still enabled on the ? ? ? ? ? ? ? ? ? ? ? ?\n" - "> > > > offlined cpu. And following perf_event_open() ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n" - "> > > > syscalls will fail. ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n" + "> > > > If the cpu pmu is using a percpu irq: \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240\n" + "> > > > \302\240 \302\240 \302\240\302\240\n" + "> > > > 1. When a cpu is down, we should disable pmu irq on \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240\n" + "> > > > that cpu. Otherwise, if the cpu is still down when \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240\n" + "> > > > the last perf event is released, the pmu irq can't \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240\n" + "> > > > be freed. Because the irq is still enabled on the \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240\n" + "> > > > offlined cpu. And following perf_event_open() \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240\n" + "> > > > syscalls will fail. \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240\n" "> > > >\n" - "> > > > 2. When a cpu is up, we should enable pmu irq on ? ? ? ? ? ? ? ? ? ? ? ? ?\n" - "> > > > that cpu. Otherwise, profiling tools can't sample ? ? ? ? ? ? ? ? ? ? ? ?\n" - "> > > > events on the cpu before all perf events are ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n" - "> > > > released, because pmu irq is disabled on that cpu. ? ? ? ? ? ? ? ? ? ? ? ?\n" + "> > > > 2. When a cpu is up, we should enable pmu irq on \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240\n" + "> > > > that cpu. Otherwise, profiling tools can't sample \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240\n" + "> > > > events on the cpu before all perf events are \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240\n" + "> > > > released, because pmu irq is disabled on that cpu. \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240 \302\240\n" "> \n" "> [...]\n" "> \n" @@ -60,4 +63,4 @@ "\n" Will -ec6f5888222cd08a84e77565fa21eedde8902bd543e33bed6e0a28523ccdefbf +75cab4bb88fc69183c89f1a1f6c59ee260c1d9c3499a4656763ccfd16a506d60
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.