use the RMIDs that are freed.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arch/x86/events/intel/cqm.c | 107
1 file changed, 107 insertions(+)
diff --git a/arch/x86/events/intel/cqm.c b/arch/x86/events/intel/cqm.c
index e1765e3
From: Vikas Shivappa<vikas.shiva...@intel.com>
This patch adds support to monitor a cgroup x and a task p1
when p1 is part of cgroup x. Since we cannot write two RMIDs during
sched in the driver handles this.
This patch introduces a u32 *rmid in the task_struck which keeps track
of the
use the RMIDs that are freed.
Signed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 107
1 file changed, 107 insertions(+)
diff --git a/arch/x86/events/intel/cqm.c b/arch/x86/events/intel/cqm.c
index e1765e3..92efe12 100644
--- a/arch/x86/events/in
From: Vikas Shivappa
This patch adds support to monitor a cgroup x and a task p1
when p1 is part of cgroup x. Since we cannot write two RMIDs during
sched in the driver handles this.
This patch introduces a u32 *rmid in the task_struck which keeps track
of the RMIDs associated with the task
MSR
read(for task p1): As any other cqm task event
read(for the cgroup x): When counting for cgroup, the taskmon list is
traversed and the corresponding RMID counts are added.
Tests: Monitoring a cgroup x and a task with in the cgroup x should
work.
Patch modified/refactored by Vikas Shivappa
<
continuously without perf by
toggling the new cont_mon file in the cgroup.
Patch is based on David Carrillo-Cisneros <davi...@google.com> patches
in cqm2 series.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arch/x86/events/intel
any other cqm task event
read(for the cgroup x): When counting for cgroup, the taskmon list is
traversed and the corresponding RMID counts are added.
Tests: Monitoring a cgroup x and a task with in the cgroup x should
work.
Patch modified/refactored by Vikas Shivappa
to support recycling remo
continuously without perf by
toggling the new cont_mon file in the cgroup.
Patch is based on David Carrillo-Cisneros patches
in cqm2 series.
Signed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 119 ++--
1 file changed, 114 insertions(+), 5 deletions
before. Cgroup still doesnt work but we did the prep to
get it to work
Patch modified/refactored by Vikas Shivappa
<vikas.shiva...@linux.intel.com> to support recycling removal.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arch/x86/events/intel/cqm.c | 19 +++
com> patches
in cqm2 series.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arch/x86/events/intel/cqm.c | 46 +--
arch/x86/include/asm/intel_pqr_common.h | 38 +
arch/x86/include/asm/intel_rdt.h | 39 -
arch/x86
s
in cqm2 series.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arch/x86/events/intel/cqm.c | 1 +
include/linux/perf_event.h | 19 ---
kernel/events/core.c| 16
3 files changed, 29 insertions(+), 7 deletions(-)
diff --git a/arch/x
fixes this problem by modifying read_counters()
to mark the event as not scaled (scaled = -1) to force
the printout routine to show .
Signed-off-by: Stephane Eranian <eran...@google.com>
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
tools/perf/builtin-stat.c | 12 ++
cgroup->arch_info: css_alloc,
css_free, event terminate, init hold mutex.
Tests: Cgroup monitoring should work. Monitoring multiple cgroups in the
same hierarchy works. monitoring cgroup and a task within same cgroup
doesnt work yet.
Patch modified/refactored by Vikas Shivappa
<vikas.shiva...@lin
but we did the prep to
get it to work
Patch modified/refactored by Vikas Shivappa
to support recycling removal.
Signed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 19 ++-
arch/x86/include/asm/perf_event.h | 32
include/linux
.
Signed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 46 +--
arch/x86/include/asm/intel_pqr_common.h | 38 +
arch/x86/include/asm/intel_rdt.h | 39 -
arch/x86/include/asm/intel_rdt_common.h | 13 +
arch/x86/include/asm
off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 1 +
include/linux/perf_event.h | 19 ---
kernel/events/core.c| 16
3 files changed, 29 insertions(+), 7 deletions(-)
diff --git a/arch/x86/events/intel/cqm.c b/arch/x86/events/intel/cqm.c
index e0d4
read_counters()
to mark the event as not scaled (scaled = -1) to force
the printout routine to show .
Signed-off-by: Stephane Eranian
Signed-off-by: Vikas Shivappa
---
tools/perf/builtin-stat.c | 12 +---
tools/perf/util/evsel.c | 4 ++--
2 files changed, 11 insertions(+), 5 deletions
loc,
css_free, event terminate, init hold mutex.
Tests: Cgroup monitoring should work. Monitoring multiple cgroups in the
same hierarchy works. monitoring cgroup and a task within same cgroup
doesnt work yet.
Patch modified/refactored by Vikas Shivappa
to support recycling removal.
Signed-
use the RMIDs that are freed.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arch/x86/events/intel/cqm.c | 107 +++-
1 file changed, 106 insertions(+), 1 deletion(-)
diff --git a/arch/x86/events/intel/cqm.c b/arch/x86/events/intel/cq
ephane Eranian <eran...@google.com>
Signed-off-by: David Carrillo-Cisneros <davi...@google.com>
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
tools/perf/builtin-stat.c | 36 +++---
tools/perf/util/counts.h | 19 ++
tools/
use the RMIDs that are freed.
Signed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 107 +++-
1 file changed, 106 insertions(+), 1 deletion(-)
diff --git a/arch/x86/events/intel/cqm.c b/arch/x86/events/intel/cqm.c
index 73f566a..85162aa 100644
--- a/a
-by: David Carrillo-Cisneros
Signed-off-by: Vikas Shivappa
---
tools/perf/builtin-stat.c | 36 +++---
tools/perf/util/counts.h | 19 ++
tools/perf/util/evsel.c | 49 ---
tools/perf/util/evsel.h | 8
Add a compile option INTEL_RDT which enables common code for all
RDT(Resource director technology) and a specific INTEL_RDT_M which
enables code for RDT monitoring. CQM(cache quality monitoring) and
mbm(memory b/w monitoring) are part of Intel RDT monitoring.
Signed-off-by: Vikas Shivappa
and
such cgroups are part of large number of cgroups which are monitored -
that way we donot overuse RMIDs.
Patch is based on David Carrillo-Cisneros <davi...@google.com> patches
in cqm2 series.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arch/x86/events/intel/cqm.c
,put_rmid, perf start, terminate
Tests: RMIDs available increase by x times where x is number of sockets
and the usage is dynamic so we save more.
Patch is based on David Carrillo-Cisneros <davi...@google.com> patches
in cqm2 series.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.
Vikas<vikas.shiva...@linux.intel.com>
to only remove recycling parts from code and edit commit message.
Tests: The cqm should either gives correct numbers for task events
or just throw error that its run out of RMIDs.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arc
Add a compile option INTEL_RDT which enables common code for all
RDT(Resource director technology) and a specific INTEL_RDT_M which
enables code for RDT monitoring. CQM(cache quality monitoring) and
mbm(memory b/w monitoring) are part of Intel RDT monitoring.
Signed-off-by: Vikas Shivappa
and
such cgroups are part of large number of cgroups which are monitored -
that way we donot overuse RMIDs.
Patch is based on David Carrillo-Cisneros patches
in cqm2 series.
Signed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 145 +---
arch/x86/events
,put_rmid, perf start, terminate
Tests: RMIDs available increase by x times where x is number of sockets
and the usage is dynamic so we save more.
Patch is based on David Carrillo-Cisneros patches
in cqm2 series.
Signed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 340
parts from code and edit commit message.
Tests: The cqm should either gives correct numbers for task events
or just throw error that its run out of RMIDs.
Signed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 647 ++--
1 file changed, 30 insertions
Another attempt for cqm2 series-
The current upstream cqm(Cache monitoring) has major issues which make
the feature almost unusable which this series tries to fix and also
address Thomas comments on previous versions of the cqm2 patch series to
better document what we are trying to fix. Patch is
Add documentation of usage of cqm and mbm events, continuous monitoring,
lazy and non-lazy monitoring.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
Documentation/x86/intel_rdt_mon_ui.txt | 91 ++
1 file changed, 91 insertions(+)
creat
Another attempt for cqm2 series-
The current upstream cqm(Cache monitoring) has major issues which make
the feature almost unusable which this series tries to fix and also
address Thomas comments on previous versions of the cqm2 patch series to
better document what we are trying to fix. Patch is
Add documentation of usage of cqm and mbm events, continuous monitoring,
lazy and non-lazy monitoring.
Signed-off-by: Vikas Shivappa
---
Documentation/x86/intel_rdt_mon_ui.txt | 91 ++
1 file changed, 91 insertions(+)
create mode 100644 Documentation/x86
e(rmid) //returns current total_bytes
count: // MBM right now uses count instead of read
cur_count = update_sample(rmid)
event->count += cur_count - event->prev_count
event->prev_count = cur_count
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arch/x86/ev
instance is seeing. This patch tries to fix the issue
by saving the count for all the events in the same event group.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arch/x86/events/intel/cqm.c | 39 ---
1 file changed, 24 insertions(
instance is seeing. This patch tries to fix the issue
by saving the count for all the events in the same event group.
Signed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 39 ---
1 file changed, 24 insertions(+), 15 deletions(-)
diff --git a/arch
e(rmid) //returns current total_bytes
count: // MBM right now uses count instead of read
cur_count = update_sample(rmid)
event->count += cur_count - event->prev_count
event->prev_count = cur_count
Signed-off-by: Vikas Shivappa
---
arch/x86/events/i
Sending some urgent fixes for the MBM(memory b/w monitoring) which is
upstreamed from 4.6-rc1. Patches apply on 4.6-rc6.
CQM and MBM counters reported some incorrect counts for different
scenarios like interval mode or for multiple perf instances.
A second attempt to send V2 as per Peter
ed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arch/x86/events/intel/cqm.c | 39 ---
1 file changed, 32 insertions(+), 7 deletions(-)
diff --git a/arch/x86/events/intel/cqm.c b/arch/x86/events/intel/cqm.c
index a98d841..f91a172 100644
--
Sending some urgent fixes for the MBM(memory b/w monitoring) which is
upstreamed from 4.6-rc1. Patches apply on 4.6-rc6.
CQM and MBM counters reported some incorrect counts for different
scenarios like interval mode or for multiple perf instances.
A second attempt to send V2 as per Peter
ed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 39 ---
1 file changed, 32 insertions(+), 7 deletions(-)
diff --git a/arch/x86/events/intel/cqm.c b/arch/x86/events/intel/cqm.c
index a98d841..f91a172 100644
--- a/arch/x86/events/intel/cqm.c
+++ b/ar
On Tue, 3 May 2016, Peter Zijlstra wrote:
On Mon, Apr 25, 2016 at 02:12:09PM -0700, Vikas Shivappa wrote:
start:
prev_count = read_hw_counter();
I am assuming this means we keep the prev_count when event is initialized.
This is done in the mbm_init which calls update_sample
On Tue, 3 May 2016, Peter Zijlstra wrote:
On Mon, Apr 25, 2016 at 02:12:09PM -0700, Vikas Shivappa wrote:
start:
prev_count = read_hw_counter();
I am assuming this means we keep the prev_count when event is initialized.
This is done in the mbm_init which calls update_sample
all the cases like context swith to a pid2 which is not monitored..
(assume event1 still exists)
On Fri, Apr 29, 2016 at 2:32 PM Vikas Shivappa
<vikas.shiva...@linux.intel.com> wrote:
On Fri, 29 Apr 2016, David Carrillo-Cisneros wrote:
if __intel_cqm_no_event_sched_in does nothing, the PQR_
all the cases like context swith to a pid2 which is not monitored..
(assume event1 still exists)
On Fri, Apr 29, 2016 at 2:32 PM Vikas Shivappa
wrote:
On Fri, 29 Apr 2016, David Carrillo-Cisneros wrote:
if __intel_cqm_no_event_sched_in does nothing, the PQR_ASSOC msr is
still updated if state-&g
On Fri, Apr 29, 2016 at 2:01 PM, Vikas Shivappa
<vikas.shiva...@linux.intel.com> wrote:
On Fri, 29 Apr 2016, David Carrillo-Cisneros wrote:
Not sure I see the problem you point here. In step 3, PQR_ASSOC is
updated with RMID1, __pqr_update is the one called using the scheduler
hook, righ
On Fri, Apr 29, 2016 at 2:01 PM, Vikas Shivappa
wrote:
On Fri, 29 Apr 2016, David Carrillo-Cisneros wrote:
Not sure I see the problem you point here. In step 3, PQR_ASSOC is
updated with RMID1, __pqr_update is the one called using the scheduler
hook, right after perf sched_in .
On Fri, Apr 29
On Thu, 28 Apr 2016, David Carrillo-Cisneros wrote:
This series introduces the next iteration of kernel support for the
Cache QoS Monitoring (CQM) technology available in Intel Xeon processors.
Wondering what is the kernel version this compiles on ?
Thanks,
Vikas
One of the main
On Thu, 28 Apr 2016, David Carrillo-Cisneros wrote:
This series introduces the next iteration of kernel support for the
Cache QoS Monitoring (CQM) technology available in Intel Xeon processors.
Wondering what is the kernel version this compiles on ?
Thanks,
Vikas
One of the main
On Fri, 29 Apr 2016, David Carrillo-Cisneros wrote:
Not sure I see the problem you point here. In step 3, PQR_ASSOC is
updated with RMID1, __pqr_update is the one called using the scheduler
hook, right after perf sched_in .
On Fri, Apr 29, 2016 at 1:25 PM, Vikas Shivappa
<vikas.sh
On Fri, 29 Apr 2016, David Carrillo-Cisneros wrote:
Not sure I see the problem you point here. In step 3, PQR_ASSOC is
updated with RMID1, __pqr_update is the one called using the scheduler
hook, right after perf sched_in .
On Fri, Apr 29, 2016 at 1:25 PM, Vikas Shivappa
wrote:
On Thu
@@ -27,5 +27,7 @@ struct intel_pqr_state {
DECLARE_PER_CPU(struct intel_pqr_state, pqr_state);
+#define PQR_MAX_NR_PKGS8
topology_max_packages()
+
#endif
#endif
--
2.8.0.rc3.226.g39d4020
@@ -27,5 +27,7 @@ struct intel_pqr_state {
DECLARE_PER_CPU(struct intel_pqr_state, pqr_state);
+#define PQR_MAX_NR_PKGS8
topology_max_packages()
+
#endif
#endif
--
2.8.0.rc3.226.g39d4020
On Thu, 28 Apr 2016, David Carrillo-Cisneros wrote:
Allow monitored cgroups to update the PQR MSR during task switch even
without an associated perf_event.
The package RMID for the current monr associated with a monitored
cgroup is written to hw during task switch (after perf_events is run)
On Thu, 28 Apr 2016, David Carrillo-Cisneros wrote:
Allow monitored cgroups to update the PQR MSR during task switch even
without an associated perf_event.
The package RMID for the current monr associated with a monitored
cgroup is written to hw during task switch (after perf_events is run)
On Fri, 29 Apr 2016, David Carrillo-Cisneros wrote:
(Re-sending in plain text)
This hook is used in the following patch in the series to write to
PQR_ASSOC_MSR, a msr that is utilized both by CQM/CMT and by CAT.
Since CAT is not dependent on perf, I created this hook to start CQM
monitoring
On Fri, 29 Apr 2016, David Carrillo-Cisneros wrote:
(Re-sending in plain text)
This hook is used in the following patch in the series to write to
PQR_ASSOC_MSR, a msr that is utilized both by CQM/CMT and by CAT.
Since CAT is not dependent on perf, I created this hook to start CQM
monitoring
On Thu, 28 Apr 2016, David Carrillo-Cisneros wrote:
Removing MBM code from arch/x86/events/intel/cqm.c. MBM will be added
using the new RMID infrastucture introduced in this patch series.
I am still working on to rebase mbm on top of the new cqm
series (probably with the new quick fixes i
On Thu, 28 Apr 2016, David Carrillo-Cisneros wrote:
Removing MBM code from arch/x86/events/intel/cqm.c. MBM will be added
using the new RMID infrastucture introduced in this patch series.
I am still working on to rebase mbm on top of the new cqm
series (probably with the new quick fixes i
Sending some urgent fixes for the MBM(memory b/w monitoring) which is
upstreamed from 4.6-rc1. Patches apply on 4.6-rc1.
CQM and MBM counters reported some incorrect counts for different
scenarios like interval mode or for multiple perf instances.
An updated V2 as per Peter feedback: fixing a
instance is seeing. This patch tries to fix the issue
by saving the count for all the events in the same event group.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arch/x86/events/intel/cqm.c | 39 ---
1 file changed, 24 insertions(
after RMID1 and then again after RMID2.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arch/x86/events/intel/cqm.c | 49 -
include/linux/perf_event.h | 1 +
2 files changed, 45 insertions(+), 5 deletions(-)
diff --git a/ar
Sending some urgent fixes for the MBM(memory b/w monitoring) which is
upstreamed from 4.6-rc1. Patches apply on 4.6-rc1.
CQM and MBM counters reported some incorrect counts for different
scenarios like interval mode or for multiple perf instances.
An updated V2 as per Peter feedback: fixing a
instance is seeing. This patch tries to fix the issue
by saving the count for all the events in the same event group.
Signed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 39 ---
1 file changed, 24 insertions(+), 15 deletions(-)
diff --git a/arch
after RMID1 and then again after RMID2.
Signed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 49 -
include/linux/perf_event.h | 1 +
2 files changed, 45 insertions(+), 5 deletions(-)
diff --git a/arch/x86/events/intel/cqm.c b/arch/x86/events
as the PID1 is already counted.
4.event2 stores st_count as 100MB.
5.After some time, when user wants to count event2 and say RMID1's
current total_bytes 110MB, we report 110MB - 100MB = 10MB
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arch/x86/events/intel/cqm.
as the PID1 is already counted.
4.event2 stores st_count as 100MB.
5.After some time, when user wants to count event2 and say RMID1's
current total_bytes 110MB, we report 110MB - 100MB = 10MB
Signed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 71
'per event' rc_count = read_sample(event->rmid) - per event start count;
'per event' rc_count += read_sample(event->rmid) - per event start count;
'per event' rc_count = read_sample(event->rmid) - per event start count;
'per event' rc_count += read_sample(event->rmid) - per event start count;
On Mon, 25 Apr 2016, Peter Zijlstra wrote:
On Mon, Apr 25, 2016 at 09:44:53AM -0700, Vikas Shivappa wrote:
On Mon, 25 Apr 2016, Peter Zijlstra wrote:
On Fri, Apr 22, 2016 at 05:27:20PM -0700, Vikas Shivappa wrote:
When multiple instances of perf reuse RMID, then we need to start
On Mon, 25 Apr 2016, Peter Zijlstra wrote:
On Mon, Apr 25, 2016 at 09:44:53AM -0700, Vikas Shivappa wrote:
On Mon, 25 Apr 2016, Peter Zijlstra wrote:
On Fri, Apr 22, 2016 at 05:27:20PM -0700, Vikas Shivappa wrote:
When multiple instances of perf reuse RMID, then we need to start
On Mon, 25 Apr 2016, Peter Zijlstra wrote:
On Mon, Apr 25, 2016 at 11:04:38AM -0700, Vikas Shivappa wrote:
This is a 'creative' solution; why don't you do the normal thing, which
is:
start:
prev_count = read_hw_counter();
read:
do {
prev = prev_count
On Mon, 25 Apr 2016, Peter Zijlstra wrote:
On Mon, Apr 25, 2016 at 11:04:38AM -0700, Vikas Shivappa wrote:
This is a 'creative' solution; why don't you do the normal thing, which
is:
start:
prev_count = read_hw_counter();
read:
do {
prev = prev_count
On Mon, 25 Apr 2016, Peter Zijlstra wrote:
On Fri, Apr 22, 2016 at 05:27:19PM -0700, Vikas Shivappa wrote:
+static inline void mbm_set_rccount(
+ struct perf_event *event, struct rmid_read *rr)
That's horrible style, the 'normal' style is something like:
static
On Mon, 25 Apr 2016, Peter Zijlstra wrote:
On Fri, Apr 22, 2016 at 05:27:19PM -0700, Vikas Shivappa wrote:
+static inline void mbm_set_rccount(
+ struct perf_event *event, struct rmid_read *rr)
That's horrible style, the 'normal' style is something like:
static
On Mon, 25 Apr 2016, Peter Zijlstra wrote:
On Fri, Apr 22, 2016 at 05:27:20PM -0700, Vikas Shivappa wrote:
When multiple instances of perf reuse RMID, then we need to start
counting for each instance rather than reporting the current RMID count.
This patch adds a st_count(start count) per
On Mon, 25 Apr 2016, Peter Zijlstra wrote:
On Fri, Apr 22, 2016 at 05:27:20PM -0700, Vikas Shivappa wrote:
When multiple instances of perf reuse RMID, then we need to start
counting for each instance rather than reporting the current RMID count.
This patch adds a st_count(start count) per
On Mon, 25 Apr 2016, Peter Zijlstra wrote:
On Fri, Apr 22, 2016 at 05:27:18PM -0700, Vikas Shivappa wrote:
During RMID recycling, when an event loses the RMID we saved the counter
for group leader but it was not being saved for all the events in an
event group. This would lead to a situation
On Mon, 25 Apr 2016, Peter Zijlstra wrote:
On Fri, Apr 22, 2016 at 05:27:18PM -0700, Vikas Shivappa wrote:
During RMID recycling, when an event loses the RMID we saved the counter
for group leader but it was not being saved for all the events in an
event group. This would lead to a situation
very
confusing numbers of intermittent zero and some occupancy when perf is
run with cgroup and task events.
Hence removing support for the parts which are broken rather than
pretending to support it and giving incorrect data.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
after RMID1 and then again after RMID2.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arch/x86/events/intel/cqm.c | 40 +---
include/linux/perf_event.h | 1 +
2 files changed, 38 insertions(+), 3 deletions(-)
diff --git a/arch/x86/
When multiple instances of perf reuse RMID, then we need to start
counting for each instance rather than reporting the current RMID count.
This patch adds a st_count(start count) per event to track the same.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arch/x86/events
very
confusing numbers of intermittent zero and some occupancy when perf is
run with cgroup and task events.
Hence removing support for the parts which are broken rather than
pretending to support it and giving incorrect data.
Signed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 3
after RMID1 and then again after RMID2.
Signed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 40 +---
include/linux/perf_event.h | 1 +
2 files changed, 38 insertions(+), 3 deletions(-)
diff --git a/arch/x86/events/intel/cqm.c b/arch/x86/events
When multiple instances of perf reuse RMID, then we need to start
counting for each instance rather than reporting the current RMID count.
This patch adds a st_count(start count) per event to track the same.
Signed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 71
Sending some urgent fixes for the MBM(memory b/w monitoring) which is
upstreamed from 4.6-rc1. Patches apply on 4.6-rc1.
CQM and MBM counters reported some incorrect counts for different
scenarios like interval mode or for multiple perf instances. The
1/4,2/4,3/4 address these issues.
The last
instance is seeing. This patch tries to fix the issue
by saving the count for all the events in the same event group.
Signed-off-by: Vikas Shivappa <vikas.shiva...@linux.intel.com>
---
arch/x86/events/intel/cqm.c | 39 ---
1 file changed, 24 insertions(
Sending some urgent fixes for the MBM(memory b/w monitoring) which is
upstreamed from 4.6-rc1. Patches apply on 4.6-rc1.
CQM and MBM counters reported some incorrect counts for different
scenarios like interval mode or for multiple perf instances. The
1/4,2/4,3/4 address these issues.
The last
instance is seeing. This patch tries to fix the issue
by saving the count for all the events in the same event group.
Signed-off-by: Vikas Shivappa
---
arch/x86/events/intel/cqm.c | 39 ---
1 file changed, 24 insertions(+), 15 deletions(-)
diff --git a/arch
On Wed, 23 Mar 2016, Matt Fleming wrote:
On Mon, 21 Mar, at 11:14:37AM, Vikas Shivappa wrote:
Before MBM , the below condition was never hit because we had only one event ?
- if (a->hw.target == b->hw.target)
+ if (a->hw.target == b->hw.target) {
+
On Wed, 23 Mar 2016, Matt Fleming wrote:
On Mon, 21 Mar, at 11:14:37AM, Vikas Shivappa wrote:
Before MBM , the below condition was never hit because we had only one event ?
- if (a->hw.target == b->hw.target)
+ if (a->hw.target == b->hw.target) {
+
On Mon, 21 Mar 2016, Matt Fleming wrote:
On Mon, 21 Mar, at 02:53:04AM, tip-bot for Vikas Shivappa wrote:
@@ -489,6 +496,22 @@ static u32 intel_cqm_xchg_rmid(struct perf_event *group,
u32 rmid)
raw_spin_unlock_irq(_lock);
+ /*
+* If the allocation is for mbm, init
On Mon, 21 Mar 2016, Matt Fleming wrote:
On Mon, 21 Mar, at 02:53:04AM, tip-bot for Vikas Shivappa wrote:
@@ -489,6 +496,22 @@ static u32 intel_cqm_xchg_rmid(struct perf_event *group,
u32 rmid)
raw_spin_unlock_irq(_lock);
+ /*
+* If the allocation is for mbm, init
On Mon, 21 Mar 2016, Matt Fleming wrote:
On Mon, 21 Mar, at 02:51:29AM, tip-bot for Vikas Shivappa wrote:
Commit-ID: a223c1c7ab4cc64537dc4b911f760d851683768a
Gitweb: http://git.kernel.org/tip/a223c1c7ab4cc64537dc4b911f760d851683768a
Author: Vikas Shivappa <vikas.sh
On Mon, 21 Mar 2016, Matt Fleming wrote:
On Mon, 21 Mar, at 02:51:29AM, tip-bot for Vikas Shivappa wrote:
Commit-ID: a223c1c7ab4cc64537dc4b911f760d851683768a
Gitweb: http://git.kernel.org/tip/a223c1c7ab4cc64537dc4b911f760d851683768a
Author: Vikas Shivappa
AuthorDate: Thu, 10 Mar
Commit-ID: e7ee3e8cb550ce43752ae1d1b190d6b5c4150a43
Gitweb: http://git.kernel.org/tip/e7ee3e8cb550ce43752ae1d1b190d6b5c4150a43
Author: Vikas Shivappa <vikas.shiva...@linux.intel.com>
AuthorDate: Fri, 11 Mar 2016 11:26:17 -0800
Committer: Ingo Molnar <mi...@kernel.org>
CommitD
Commit-ID: e7ee3e8cb550ce43752ae1d1b190d6b5c4150a43
Gitweb: http://git.kernel.org/tip/e7ee3e8cb550ce43752ae1d1b190d6b5c4150a43
Author: Vikas Shivappa
AuthorDate: Fri, 11 Mar 2016 11:26:17 -0800
Committer: Ingo Molnar
CommitDate: Mon, 21 Mar 2016 09:08:21 +0100
perf/x86/mbm: Add
Commit-ID: ada2f634cd50d050269b67b4e2966582387e7c27
Gitweb: http://git.kernel.org/tip/ada2f634cd50d050269b67b4e2966582387e7c27
Author: Vikas Shivappa <vikas.shiva...@linux.intel.com>
AuthorDate: Thu, 10 Mar 2016 15:32:08 -0800
Committer: Ingo Molnar <mi...@kernel.org>
CommitD
Commit-ID: a223c1c7ab4cc64537dc4b911f760d851683768a
Gitweb: http://git.kernel.org/tip/a223c1c7ab4cc64537dc4b911f760d851683768a
Author: Vikas Shivappa <vikas.shiva...@linux.intel.com>
AuthorDate: Thu, 10 Mar 2016 15:32:07 -0800
Committer: Ingo Molnar <mi...@kernel.org>
CommitD
401 - 500 of 1052 matches
Mail list logo