From: Robert Richter <robert.richter@amd.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: Peter Zijlstra <peterz@infradead.org>,
LKML <linux-kernel@vger.kernel.org>,
oprofile-list <oprofile-list@lists.sourceforge.net>
Subject: [PATCH 0/9] oprofile, perf, x86: introduce new functions to reserve perfctrs
Date: Thu, 4 Mar 2010 16:22:02 +0100 [thread overview]
Message-ID: <1267716131-17908-1-git-send-email-robert.richter@amd.com> (raw)
This patch set improves the perfctr reservation code. New functions
are available to reserve a counter by its index only. It is no longer
necessary to allocate both msrs of a counter which also improves the
code and makes it easier.
For oprofile a handler is implemented that returns an error now if a
counter is already reserved by a different subsystem such as perf or
watchdog. Before, oprofile silently ignored that counter. Finally the
new reservation functions can be used to allocate special parts of the
pmu such as IBS, which is necessary to use IBS with perf too.
The patches are available in the oprofile tree:
git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile.git core
If there are no objections, I suggest to merge it into the
tip/perf/core too, maybe after pending patches went in. If there are
already conflicts, I will do the merge for this.
See enclose changelog.
-Robert
The following changes since commit bb1165d6882f423f90fc7007a88c6c993b7c2ac4:
Robert Richter (1):
perf, x86: rename macro in ARCH_PERFMON_EVENTSEL_ENABLE
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile.git core
Robert Richter (9):
perf, x86: reduce number of CONFIG_X86_LOCAL_APIC macros
oprofile, perf, x86: do not allocate evntsel counter msr
oprofile, perf, x86: introduce new functions to reserve perfctrs by index
tsc, x86: use new perfctr reservation functions in tsc code
perf, x86: use new perfctr reservation functions in perf code
oprofile/x86: rework error handler in nmi_setup()
oprofile/x86: return -EBUSY if counters are already reserved
oprofile/x86: group IBS code
oprofile/x86: implement perfctr reservation for IBS
arch/x86/include/asm/nmi.h | 2 +
arch/x86/include/asm/perf_event.h | 3 +
arch/x86/kernel/cpu/perf_event.c | 36 ++---
arch/x86/kernel/cpu/perfctr-watchdog.c | 35 +++--
arch/x86/kernel/tsc.c | 8 +-
arch/x86/oprofile/nmi_int.c | 38 +++--
arch/x86/oprofile/op_model_amd.c | 277 ++++++++++++++++++--------------
arch/x86/oprofile/op_model_p4.c | 15 ++-
arch/x86/oprofile/op_model_ppro.c | 23 ++--
arch/x86/oprofile/op_x86_model.h | 2 +-
10 files changed, 248 insertions(+), 191 deletions(-)
next reply other threads:[~2010-03-04 16:49 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-04 15:22 Robert Richter [this message]
2010-03-04 15:22 ` [PATCH 1/9] perf, x86: reduce number of CONFIG_X86_LOCAL_APIC macros Robert Richter
2010-03-04 15:22 ` [PATCH 2/9] oprofile, perf, x86: do not allocate evntsel counter msr Robert Richter
2010-03-04 15:22 ` [PATCH 3/9] oprofile, perf, x86: introduce new functions to reserve perfctrs by index Robert Richter
2010-03-20 5:45 ` Andi Kleen
2010-03-25 15:52 ` Robert Richter
2010-03-25 19:33 ` Andi Kleen
2010-03-04 15:22 ` [PATCH 4/9] tsc, x86: use new perfctr reservation functions in tsc code Robert Richter
2010-03-04 15:22 ` [PATCH 5/9] perf, x86: use new perfctr reservation functions in perf code Robert Richter
2010-03-04 15:22 ` [PATCH 6/9] oprofile/x86: rework error handler in nmi_setup() Robert Richter
2010-03-04 15:22 ` [PATCH 7/9] oprofile/x86: return -EBUSY if counters are already reserved Robert Richter
2010-03-04 15:22 ` [PATCH 8/9] oprofile/x86: group IBS code Robert Richter
2010-03-04 15:22 ` [PATCH 9/9] oprofile/x86: implement perfctr reservation for IBS Robert Richter
2010-03-04 17:59 ` [PATCH 0/9] oprofile, perf, x86: introduce new functions to reserve perfctrs Peter Zijlstra
2010-03-11 11:48 ` Peter Zijlstra
2010-03-11 12:47 ` Ingo Molnar
2010-03-11 15:45 ` Robert Richter
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1267716131-17908-1-git-send-email-robert.richter@amd.com \
--to=robert.richter@amd.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=oprofile-list@lists.sourceforge.net \
--cc=peterz@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Powered by JetHome