<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/arch/alpha/kernel/perf_event.c, branch v3.2.41</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/arch/alpha/kernel/perf_event.c?h=v3.2.41</id>
<link rel='self' href='https://git.amat.us/linux/atom/arch/alpha/kernel/perf_event.c?h=v3.2.41'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2011-07-26T23:49:47Z</updated>
<entry>
<title>atomic: use &lt;linux/atomic.h&gt;</title>
<updated>2011-07-26T23:49:47Z</updated>
<author>
<name>Arun Sharma</name>
<email>asharma@fb.com</email>
</author>
<published>2011-07-26T23:09:06Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=60063497a95e716c9a689af3be2687d261f115b4'/>
<id>urn:sha1:60063497a95e716c9a689af3be2687d261f115b4</id>
<content type='text'>
This allows us to move duplicated code in &lt;asm/atomic.h&gt;
(atomic_inc_not_zero() for now) to &lt;linux/atomic.h&gt;

Signed-off-by: Arun Sharma &lt;asharma@fb.com&gt;
Reviewed-by: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Cc: Ingo Molnar &lt;mingo@elte.hu&gt;
Cc: David Miller &lt;davem@davemloft.net&gt;
Cc: Eric Dumazet &lt;eric.dumazet@gmail.com&gt;
Acked-by: Mike Frysinger &lt;vapier@gentoo.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>perf: Remove the nmi parameter from the swevent and overflow interface</title>
<updated>2011-07-01T09:06:35Z</updated>
<author>
<name>Peter Zijlstra</name>
<email>a.p.zijlstra@chello.nl</email>
</author>
<published>2011-06-27T12:41:57Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a8b0ca17b80e92faab46ee7179ba9e99ccb61233'/>
<id>urn:sha1:a8b0ca17b80e92faab46ee7179ba9e99ccb61233</id>
<content type='text'>
The nmi parameter indicated if we could do wakeups from the current
context, if not, we would set some state and self-IPI and let the
resulting interrupt do the wakeup.

For the various event classes:

  - hardware: nmi=0; PMI is in fact an NMI or we run irq_work_run from
    the PMI-tail (ARM etc.)
  - tracepoint: nmi=0; since tracepoint could be from NMI context.
  - software: nmi=[0,1]; some, like the schedule thing cannot
    perform wakeups, and hence need 0.

As one can see, there is very little nmi=1 usage, and the down-side of
not using it is that on some platforms some software events can have a
jiffy delay in wakeup (when arch_irq_work_raise isn't implemented).

The up-side however is that we can remove the nmi parameter and save a
bunch of conditionals in fast paths.

Signed-off-by: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Cc: Michael Cree &lt;mcree@orcon.net.nz&gt;
Cc: Will Deacon &lt;will.deacon@arm.com&gt;
Cc: Deng-Cheng Zhu &lt;dengcheng.zhu@gmail.com&gt;
Cc: Anton Blanchard &lt;anton@samba.org&gt;
Cc: Eric B Munson &lt;emunson@mgebm.net&gt;
Cc: Heiko Carstens &lt;heiko.carstens@de.ibm.com&gt;
Cc: Paul Mundt &lt;lethal@linux-sh.org&gt;
Cc: David S. Miller &lt;davem@davemloft.net&gt;
Cc: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;
Cc: Jason Wessel &lt;jason.wessel@windriver.com&gt;
Cc: Don Zickus &lt;dzickus@redhat.com&gt;
Link: http://lkml.kernel.org/n/tip-agjev8eu666tvknpb3iaj0fg@git.kernel.org
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>perf: Dynamic pmu types</title>
<updated>2010-12-16T10:36:43Z</updated>
<author>
<name>Peter Zijlstra</name>
<email>a.p.zijlstra@chello.nl</email>
</author>
<published>2010-11-17T22:17:36Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=2e80a82a49c4c7eca4e35734380f28298ba5db19'/>
<id>urn:sha1:2e80a82a49c4c7eca4e35734380f28298ba5db19</id>
<content type='text'>
Extend the perf_pmu_register() interface to allow for named and
dynamic pmu types.

Because we need to support the existing static types we cannot use
dynamic types for everything, hence provide a type argument.

If we want to enumerate the PMUs they need a name, provide one.

Signed-off-by: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
LKML-Reference: &lt;20101117222056.259707703@chello.nl&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>perf, arch: Cleanup perf-pmu init vs lockup-detector</title>
<updated>2010-11-26T14:14:56Z</updated>
<author>
<name>Peter Zijlstra</name>
<email>a.p.zijlstra@chello.nl</email>
</author>
<published>2010-11-25T17:38:29Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=004417a6d468e24399e383645c068b498eed84ad'/>
<id>urn:sha1:004417a6d468e24399e383645c068b498eed84ad</id>
<content type='text'>
The perf hardware pmu got initialized at various points in the boot,
some before early_initcall() some after (notably arch_initcall).

The problem is that the NMI lockup detector is ran from early_initcall()
and expects the hardware pmu to be present.

Sanitize this by moving all architecture hardware pmu implementations to
initialize at early_initcall() and move the lockup detector to an explicit
initcall right after that.

Cc: paulus &lt;paulus@samba.org&gt;
Cc: davem &lt;davem@davemloft.net&gt;
Cc: Michael Cree &lt;mcree@orcon.net.nz&gt;
Cc: Deng-Cheng Zhu &lt;dengcheng.zhu@gmail.com&gt;
Acked-by: Paul Mundt &lt;lethal@linux-sh.org&gt;
Acked-by: Will Deacon &lt;will.deacon@arm.com&gt;
Signed-off-by: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
LKML-Reference: &lt;1290707759.2145.119.camel@laptop&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>alpha: Fix HW performance counters to be stopped properly</title>
<updated>2010-09-15T08:43:59Z</updated>
<author>
<name>Michael Cree</name>
<email>mcree@orcon.net.nz</email>
</author>
<published>2010-09-12T05:37:24Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=65175c07653534294257f75baa03a36edad86870'/>
<id>urn:sha1:65175c07653534294257f75baa03a36edad86870</id>
<content type='text'>
Also fix a few compile errors due to undefined and duplicated
variables.

Signed-off-by: Michael Cree &lt;mcree@orcon.net.nz&gt;
Signed-off-by: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
LKML-Reference: &lt;1284269844-23251-1-git-send-email-mcree@orcon.net.nz&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>Merge branch 'tip/perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core</title>
<updated>2010-09-15T08:27:31Z</updated>
<author>
<name>Ingo Molnar</name>
<email>mingo@elte.hu</email>
</author>
<published>2010-09-15T08:27:31Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=3aabae7d9dfaed60effe93662f02c19bafc18537'/>
<id>urn:sha1:3aabae7d9dfaed60effe93662f02c19bafc18537</id>
<content type='text'>
</content>
</entry>
<entry>
<title>perf: Remove the sysfs bits</title>
<updated>2010-09-09T18:46:31Z</updated>
<author>
<name>Peter Zijlstra</name>
<email>a.p.zijlstra@chello.nl</email>
</author>
<published>2010-09-06T13:51:45Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=15ac9a395a753cb28c674e7ea80386ffdff21785'/>
<id>urn:sha1:15ac9a395a753cb28c674e7ea80386ffdff21785</id>
<content type='text'>
Neither the overcommit nor the reservation sysfs parameter were
actually working, remove them as they'll only get in the way.

Signed-off-by: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Cc: paulus &lt;paulus@samba.org&gt;
LKML-Reference: &lt;new-submission&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>perf: Rework the PMU methods</title>
<updated>2010-09-09T18:46:30Z</updated>
<author>
<name>Peter Zijlstra</name>
<email>a.p.zijlstra@chello.nl</email>
</author>
<published>2010-06-16T12:37:10Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a4eaf7f14675cb512d69f0c928055e73d0c6d252'/>
<id>urn:sha1:a4eaf7f14675cb512d69f0c928055e73d0c6d252</id>
<content type='text'>
Replace pmu::{enable,disable,start,stop,unthrottle} with
pmu::{add,del,start,stop}, all of which take a flags argument.

The new interface extends the capability to stop a counter while
keeping it scheduled on the PMU. We replace the throttled state with
the generic stopped state.

This also allows us to efficiently stop/start counters over certain
code paths (like IRQ handlers).

It also allows scheduling a counter without it starting, allowing for
a generic frozen state (useful for rotating stopped counters).

The stopped state is implemented in two different ways, depending on
how the architecture implemented the throttled state:

 1) We disable the counter:
    a) the pmu has per-counter enable bits, we flip that
    b) we program a NOP event, preserving the counter state

 2) We store the counter state and ignore all read/overflow events

Signed-off-by: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Cc: paulus &lt;paulus@samba.org&gt;
Cc: stephane eranian &lt;eranian@googlemail.com&gt;
Cc: Robert Richter &lt;robert.richter@amd.com&gt;
Cc: Will Deacon &lt;will.deacon@arm.com&gt;
Cc: Paul Mundt &lt;lethal@linux-sh.org&gt;
Cc: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;
Cc: Cyrill Gorcunov &lt;gorcunov@gmail.com&gt;
Cc: Lin Ming &lt;ming.m.lin@intel.com&gt;
Cc: Yanmin &lt;yanmin_zhang@linux.intel.com&gt;
Cc: Deng-Cheng Zhu &lt;dengcheng.zhu@gmail.com&gt;
Cc: David Miller &lt;davem@davemloft.net&gt;
Cc: Michael Cree &lt;mcree@orcon.net.nz&gt;
LKML-Reference: &lt;new-submission&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>perf: Per PMU disable</title>
<updated>2010-09-09T18:46:29Z</updated>
<author>
<name>Peter Zijlstra</name>
<email>a.p.zijlstra@chello.nl</email>
</author>
<published>2010-06-14T06:49:00Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=33696fc0d141bbbcb12f75b69608ea83282e3117'/>
<id>urn:sha1:33696fc0d141bbbcb12f75b69608ea83282e3117</id>
<content type='text'>
Changes perf_disable() into perf_pmu_disable().

Signed-off-by: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Cc: paulus &lt;paulus@samba.org&gt;
Cc: stephane eranian &lt;eranian@googlemail.com&gt;
Cc: Robert Richter &lt;robert.richter@amd.com&gt;
Cc: Will Deacon &lt;will.deacon@arm.com&gt;
Cc: Paul Mundt &lt;lethal@linux-sh.org&gt;
Cc: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;
Cc: Cyrill Gorcunov &lt;gorcunov@gmail.com&gt;
Cc: Lin Ming &lt;ming.m.lin@intel.com&gt;
Cc: Yanmin &lt;yanmin_zhang@linux.intel.com&gt;
Cc: Deng-Cheng Zhu &lt;dengcheng.zhu@gmail.com&gt;
Cc: David Miller &lt;davem@davemloft.net&gt;
Cc: Michael Cree &lt;mcree@orcon.net.nz&gt;
LKML-Reference: &lt;new-submission&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>perf: Register PMU implementations</title>
<updated>2010-09-09T18:46:28Z</updated>
<author>
<name>Peter Zijlstra</name>
<email>a.p.zijlstra@chello.nl</email>
</author>
<published>2010-06-11T11:35:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b0a873ebbf87bf38bf70b5e39a7cadc96099fa13'/>
<id>urn:sha1:b0a873ebbf87bf38bf70b5e39a7cadc96099fa13</id>
<content type='text'>
Simple registration interface for struct pmu, this provides the
infrastructure for removing all the weak functions.

Signed-off-by: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Cc: paulus &lt;paulus@samba.org&gt;
Cc: stephane eranian &lt;eranian@googlemail.com&gt;
Cc: Robert Richter &lt;robert.richter@amd.com&gt;
Cc: Will Deacon &lt;will.deacon@arm.com&gt;
Cc: Paul Mundt &lt;lethal@linux-sh.org&gt;
Cc: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;
Cc: Cyrill Gorcunov &lt;gorcunov@gmail.com&gt;
Cc: Lin Ming &lt;ming.m.lin@intel.com&gt;
Cc: Yanmin &lt;yanmin_zhang@linux.intel.com&gt;
Cc: Deng-Cheng Zhu &lt;dengcheng.zhu@gmail.com&gt;
Cc: David Miller &lt;davem@davemloft.net&gt;
Cc: Michael Cree &lt;mcree@orcon.net.nz&gt;
LKML-Reference: &lt;new-submission&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
</feed>
