Andi Kleen | 19 Jun 2013 01:07

New version of default unit masks patchkit

Including Suravee's patch for named default masks, and 
another patch to make all Intel default unit masks unique.

-Andi

------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
Andi Kleen | 19 Jun 2013 01:04

current oprofile git doesn't compile


I always get 

/home/ak/pmu/obj/pe_profiling/../../oprofile/pe_profiling/operf.cpp:1185:
undefined reference to `op_netburst_get_perf_encoding'

--

-- 
ak <at> linux.intel.com -- Speaking for myself only.

------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
suravee.suthikulpanit | 18 Jun 2013 17:27
Picon
Favicon

[PATCH 0/2 V4] Support non-numeric default mask

From: Suravee Suthikulpanit <suravee.suthikulpanit <at> amd.com>

This patch implements alternative solution for the patch:

[PATCH 3/3] Don't do uniqueness checking for default masks
http://marc.info/?l=oprofile-list&m=136279276004115&w=2

OVERVIEW
========
In case of Intel events with named-mask, the tool expect user to use named 
mask (instead of numerical mask) when configuring events.  When no mask is 
specified, the default mask is used instead. 

The issue arises when the event has duplicated numerical mask. If user
does not specify named mask, and fall back to using default mask which 
is duplicated, the logic will gives error. 

For example, for the following unit mask, ophelp gives error.

 name:uops_retired type:exclusive default:0x1
	0x1 extra: all Actually retired uops. 
	0x2 extra: retire_slots Retirement slots used. 
	0x1 extra:pebs all_ps Actually retired uops. (Precise Event - PEBS)
	0x2 extra:pebs retire_slots_ps Retirement slots used. (Precise Event - PEBS)
	0x1 extra:cmask=1,inv stall_cycles Cycles without actually retired uops. 
	0x1 extra:cmask=10,inv total_cycles Cycles with less than 10 actually retired uops. 
	0x1 extra:cmask=1,inv,any core_stall_cycles Cycles without actually retired uops. 

 # ophelp --check-events -c i386/haswell -e uops_retired:10000000
 Unit mask (0x1) is non unique.
(Continue reading)

Maynard Johnson | 18 Jun 2013 16:10
Picon
Favicon

[PATCH] Fix 'Invalid argument' error with 'opcontrol --start' in Timer mode

Fix 'Invalid argument' error with 'opcontrol --start' in Timer mode

When a processor type does not support oprofile event-based profiling,
the oprofile kernel driver writes "timer" to the /dev/oprofile/cpu_type
file.  Usually (perhaps "always"), the architecture-specific oprofile
kernel driver does not set up the standard oprofile function pointers
that are defined in 'struct oprofile_operations oprofile_ops'.  One of
those function pointers is 'oprofile_ops.backtrace'.  When opcontrol
"--start" option is being executed, one of the actions taken is to write
the CALLGRAPH value from the daemonrc file to /dev/oprofile/backtrace_depth.
The kernel driver's filesystem function defined to respond to writes to this
file is drivers/oprofile/oprofile_files.c:depth_write().  In that function,
if 'oprofile_ops.backtrace' is not set, it returns -EINVAL, resulting in
the following opcontrol error:
   opcontrol: line 1172: echo: write error: Invalid argument

This patch detects when the system is in timer mode and handles this error
appropriately -- if simply writing '0' to backtrace_depth, the error is
ignored; otherwise, print a message that call graph is not supported on
this system in TIMER mode.

Signed-off-by: Maynard Johnson <maynardj <at> us.ibm.com>
---
 utils/opcontrol |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/utils/opcontrol b/utils/opcontrol
index 038e0db..20c6c6a 100644
--- a/utils/opcontrol
+++ b/utils/opcontrol
(Continue reading)

Gilles Allard | 13 Jun 2013 12:33
Picon
Favicon

[PATCH 2/2] Fix size problem of oprof_start GUI

On oprof_start startup "unit mask" sub-window sometimes overlaps "event list"
one ( confusing appearance ). This problem occurs if oprof_start is built
with Qt4 / Qt3Support.

This patch fixes this.

Signed-off-by: Gilles Allard <gilles.allard21 <at> orange.fr>
---
 gui/oprof_start.cpp | 2 --
 1 file changed, 2 deletions(-)

diff --git a/gui/oprof_start.cpp b/gui/oprof_start.cpp
index a4aaef5..78df87e 100644
--- a/gui/oprof_start.cpp
+++ b/gui/oprof_start.cpp
 <at>  <at>  -834,8 +834,6  <at>  <at>  void oprof_start::setup_unit_masks(op_event_descr const & 
descr)

 		check->show();
 	}
-	unit_mask_group->setMinimumSize(unit_mask_group->sizeHint());
-	setup_config_tab->setMinimumSize(setup_config_tab->sizeHint());
 }

 
--

-- 
1.8.1.5

------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:
(Continue reading)

Gilles Allard | 13 Jun 2013 12:31
Picon
Favicon

[PATCH 1/2] Fix wrong setup of kernel and user binaries buttons


The "kernel profile" & "user binaries profile" buttons of GUI are not correctly
set from daemonrc file. The 2 values are reversed & opcontrol handles a
wrong value of "--event" argument.
This patch fixes that bug.

Added: a few code optimization.

Signed-off-by: Gilles Allard <gilles.allard21 <at> orange.fr>
---
 gui/oprof_start.cpp | 51 ++++++++++++++++++++++++++-------------------------
 1 file changed, 26 insertions(+), 25 deletions(-)

diff --git a/gui/oprof_start.cpp b/gui/oprof_start.cpp
index 914e356..a4aaef5 100644
--- a/gui/oprof_start.cpp
+++ b/gui/oprof_start.cpp
 <at>  <at>  -219,6 +219,7  <at>  <at>  void oprof_start::fill_events()
 	// from its name.
 	struct list_head * pos;
 	struct list_head * events = op_events(cpu_type);
+	event_setting *cfg;

 	list_for_each(pos, events) {
 		struct op_event * event = list_entry(pos, struct op_event, 
event_next);
 <at>  <at>  -255,12 +256,13  <at>  <at>  void oprof_start::fill_events()
 					count = descr.min_count * 100;
 			}

(Continue reading)

suravee | 12 Jun 2013 09:37
Picon

[PATCH 0/2 V3] Support non-numeric default mask

From: Suravee Suthikulpanit <suravee.suthikulpanit <at> amd.com>

This patch implements alternative solution for the patch:

[PATCH 3/3] Don't do uniqueness checking for default masks
http://marc.info/?l=oprofile-list&m=136279276004115&w=2

OVERVIEW
========
In case of Intel events with named-mask, the tool expect user to use named 
mask (instead of numerical mask) when configuring events.  When no mask is 
specified, the default mask is used instead. 

The issue arises when the event has duplicated numerical mask. If user
does not specify named mask, and fall back to using default mask which 
is duplicated, the logic will gives error. 

For example, for the following unit mask, ophelp gives error.

 name:uops_retired type:exclusive default:0x1
	0x1 extra: all Actually retired uops. 
	0x2 extra: retire_slots Retirement slots used. 
	0x1 extra:pebs all_ps Actually retired uops. (Precise Event - PEBS)
	0x2 extra:pebs retire_slots_ps Retirement slots used. (Precise Event - PEBS)
	0x1 extra:cmask=1,inv stall_cycles Cycles without actually retired uops. 
	0x1 extra:cmask=10,inv total_cycles Cycles with less than 10 actually retired uops. 
	0x1 extra:cmask=1,inv,any core_stall_cycles Cycles without actually retired uops. 

 # ophelp --check-events -c i386/haswell -e uops_retired:10000000
 Unit mask (0x1) is non unique.
(Continue reading)

Maynard Johnson | 11 Jun 2013 00:47
Picon
Favicon

Announcement: Will Deacon is new ARM arch maintainer for oprofile

Will Deacon has generously volunteered his ARM expertise to serve officially in the role of ARM
architecture maintainer for oprofile.  The "Current maintainers" list (see
http://oprofile.sourceforge.net/credits/) has been updated to reflect this.  Thanks, Will!

-Maynard

------------------------------------------------------------------------------
This SF.net email is sponsored by Windows:

Build for Windows Store.

http://p.sf.net/sfu/windows-dev2dev
Maynard Johnson | 6 Jun 2013 20:40
Picon
Favicon

SourceForge OProfile Project Upgrade - Code Repo URL changed

*** To all oprofile users ***
SourceForge has done some project reorganizations/upgrades, resulting in a change to our Git repo URL.  I
have updated oprofile's "Download and Git" page (http://oprofile.sourceforge.net/download/) to
reflect the new URL (used for read-only checkouts).  Please see
https://sourceforge.net/p/forge/community-docs/Repository%20Upgrade%20FAQ/ for information
about migrating your current local repo to point to the proper url; otherwise, just do a fresh checkout
using the new URL.

Thank you.

-Maynard

------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations
2. Dashboards that offer high-level views of enterprise services
3. A single system of record for all IT processes
http://p.sf.net/sfu/servicenow-d2d-j
suravee.suthikulpanit | 5 Jun 2013 20:35
Picon
Favicon

[PATCH 0/2 V2] Support non-numeric default mask

From: Suravee Suthikulpanit <suravee.suthikulpanit <at> amd.com>

This patch implements alternative solution for the patch:

[PATCH 3/3] Don't do uniqueness checking for default masks
http://marc.info/?l=oprofile-list&m=136279276004115&w=2

OVERVIEW
========
In case of Intel events with named-mask, the tool expect user to use named 
mask (instead of numerical mask) when configuring events.  When no mask is 
specified, the default mask is used instead. 

The issue arises when the event has duplicated numerical mask. If user
does not specify named mask, and fall back to using default mask which 
is duplicated, the logic will gives error. 

For example, for the following unit mask, ophelp gives error.

 name:uops_retired type:exclusive default:0x1
	0x1 extra: all Actually retired uops. 
	0x2 extra: retire_slots Retirement slots used. 
	0x1 extra:pebs all_ps Actually retired uops. (Precise Event - PEBS)
	0x2 extra:pebs retire_slots_ps Retirement slots used. (Precise Event - PEBS)
	0x1 extra:cmask=1,inv stall_cycles Cycles without actually retired uops. 
	0x1 extra:cmask=10,inv total_cycles Cycles with less than 10 actually retired uops. 
	0x1 extra:cmask=1,inv,any core_stall_cycles Cycles without actually retired uops. 

 # ophelp --check-events -c i386/haswell -e uops_retired:10000000
 Unit mask (0x1) is non unique.
(Continue reading)

Maynard Johnson | 4 Jun 2013 15:37
Picon
Favicon

[RFC] Potential deprecation of oprofile GUI (i.e., oprof_start)

The GUI component of oprofile needs a lot of tender loving care if it is to survive.  The oprofile project used
to have a sub-maintainer (Richard Purdie) assigned to handling GUI-related patches and, generally,
ensuring the GUI worked properly. Richard is apparently no longer involved with the project -- recent
messages sent to his email address have bounced.  I have not taken much personal interest in this part of
oprofile myself, but some recent patches sent by Gilles (on cc) have led me to test drive it.  I find the GUI to
be antiquated, hard to use, and buggy (I won't even try to list all the problems here). The GUI is supposed to
support qt3 and qt4 (via the qt3Support in the qt4 package). Perhaps this attempt at supporting multiple
qt versions is one of the reasons for its problems, 
 but it's certainly not the only issue.

I am asking for someone in the community who has an interest in the oprofile GUI to step forward and volunteer
to be its maintainer.  If no one volunteers, we may have no choice but to deprecate the GUI component.

Thanks for your consideration.

-Maynard

------------------------------------------------------------------------------
How ServiceNow helps IT people transform IT departments:
1. A cloud service to automate IT design, transition and operations
2. Dashboards that offer high-level views of enterprise services
3. A single system of record for all IT processes
http://p.sf.net/sfu/servicenow-d2d-j

Gmane