From: Robert R. <rob...@am...> - 2008-11-13 15:09:58
|
This patch series contains some random patches I created over the time when working with oprofile. -Robert |
From: Robert R. <rob...@am...> - 2008-11-13 15:09:58
|
There are unreachable vecho commands in the code that are never executed since the options are parsed later. I added --verbose to check_options_early(). Additional I removed the check of the --verbose option that allows its usage only for --start or --start-daemon options. Signed-off-by: Robert Richter <rob...@am...> --- utils/opcontrol | 27 +++++++++++---------------- 1 files changed, 11 insertions(+), 16 deletions(-) diff --git a/utils/opcontrol b/utils/opcontrol index 7cfddbf..840235c 100644 --- a/utils/opcontrol +++ b/utils/opcontrol @@ -290,7 +290,6 @@ do_init() NOTE_SIZE=0 VMLINUX= XENIMAGE="none" - VERBOSE="" SEPARATE_LIB=0 SEPARATE_KERNEL=0 SEPARATE_THREAD=0 @@ -829,20 +828,16 @@ do_options() DO_SETUP=yes ;; - -V|--verbose) - if test -z "$val"; then - VERBOSE="all" - else - VERBOSE=$val - fi - ;; - -l|--list-events) EXCLUSIVE_ARGC=`expr $EXCLUSIVE_ARGC + 1` EXCLUSIVE_ARGV="$arg" exec $OPHELP ;; + # ignore early option + -V|--verbose) + ;; + *) echo "Unknown option \"$arg\". See opcontrol --help" >&2 exit 1 @@ -864,13 +859,6 @@ do_options() exit 1 fi - if test -n "$VERBOSE"; then - if test "$START" != "yes" -a "$START_DAEMON" != "yes"; then - echo "Option --verbose may only be used with --start or --start-daemon" >&2 - exit 1 - fi - fi - if test "$DO_SETUP" = "yes"; then SETUP="$DO_SETUP" fi @@ -1690,6 +1678,13 @@ check_options_early() $OPHELP --version | cut -d' ' -f2- exit 0 ;; + -V|--verbose) + if test -z "$val"; then + VERBOSE="all" + else + VERBOSE=$val + fi + ;; --session-dir) error_if_empty $arg $val SESSION_DIR="$val" -- 1.6.0.1 |
From: Robert R. <rob...@am...> - 2008-11-13 15:10:01
|
Output was broken due to unquoted double quotes. Signed-off-by: Robert Richter <rob...@am...> --- utils/opcontrol | 5 +++-- 1 files changed, 3 insertions(+), 2 deletions(-) diff --git a/utils/opcontrol b/utils/opcontrol index e32e76f..6fe0611 100644 --- a/utils/opcontrol +++ b/utils/opcontrol @@ -106,7 +106,8 @@ is_tool_available() # print help message do_help() { - echo "opcontrol: usage: + cat >&2 <<EOF +opcontrol: usage: -l/--list-events list event types and unit masks -?/--help this message -v/--version show version @@ -161,7 +162,7 @@ do_help() --xen Xen image (for Xen only) --active-domains=<list> List of domains in profiling session (for Xen only) (list contains domain ids separated by commas) -" >&2 +EOF } -- 1.6.0.1 |
From: Maynard J. <may...@us...> - 2008-11-17 22:00:26
|
Robert Richter wrote: > Output was broken due to unquoted double quotes. Where does this break? A particular shell? -Maynard > > Signed-off-by: Robert Richter <rob...@am...> > --- > utils/opcontrol | 5 +++-- > 1 files changed, 3 insertions(+), 2 deletions(-) > > diff --git a/utils/opcontrol b/utils/opcontrol > index e32e76f..6fe0611 100644 > --- a/utils/opcontrol > +++ b/utils/opcontrol > @@ -106,7 +106,8 @@ is_tool_available() > # print help message > do_help() > { > - echo "opcontrol: usage: > + cat >&2 <<EOF > +opcontrol: usage: > -l/--list-events list event types and unit masks > -?/--help this message > -v/--version show version > @@ -161,7 +162,7 @@ do_help() > --xen Xen image (for Xen only) > --active-domains=<list> List of domains in profiling session (for Xen only) > (list contains domain ids separated by commas) > -" >&2 > +EOF > } > > |
From: Robert R. <rob...@am...> - 2008-11-13 15:10:03
|
When using option --deinit the functions do_stop() and do_kill_daemon() are only called, if the daemon is running. This prevents the irritating message 'Daemon not running' for an init/deinit sequence. Signed-off-by: Robert Richter <rob...@am...> --- utils/opcontrol | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/utils/opcontrol b/utils/opcontrol index 6fe0611..c946e34 100644 --- a/utils/opcontrol +++ b/utils/opcontrol @@ -719,8 +719,10 @@ do_options() --deinit) DUMP=yes - STOP=yes - KILL_DAEMON=yes + test ! -f "$LOCK_FILE" || { + STOP=yes + KILL_DAEMON=yes + } DEINIT=yes EXCLUSIVE_ARGC=`expr $EXCLUSIVE_ARGC + 1` EXCLUSIVE_ARGV="$arg" -- 1.6.0.1 |
From: Maynard J. <may...@us...> - 2008-11-17 22:15:49
|
Robert Richter wrote: > When using option --deinit the functions do_stop() and do_kill_daemon() > are only called, if the daemon is running. This prevents the > irritating message 'Daemon not running' for an init/deinit sequence. The message may be irritating to some, but helpful to others. I hesitate removing this without better motivation. If you find it irritating, just use --shutdown between runs instead of --deinit. -Maynard > > Signed-off-by: Robert Richter <rob...@am...> > --- > utils/opcontrol | 6 ++++-- > 1 files changed, 4 insertions(+), 2 deletions(-) > > diff --git a/utils/opcontrol b/utils/opcontrol > index 6fe0611..c946e34 100644 > --- a/utils/opcontrol > +++ b/utils/opcontrol > @@ -719,8 +719,10 @@ do_options() > > --deinit) > DUMP=yes > - STOP=yes > - KILL_DAEMON=yes > + test ! -f "$LOCK_FILE" || { > + STOP=yes > + KILL_DAEMON=yes > + } > DEINIT=yes > EXCLUSIVE_ARGC=`expr $EXCLUSIVE_ARGC + 1` > EXCLUSIVE_ARGV="$arg" |
From: Robert R. <rob...@am...> - 2008-11-13 15:10:03
|
The parameter dump was located in do_init(). Values were printed as read from the setup file. Parameters that have been updated with a setup option were wrong. This patch fixes this. Also, parameters are only dumped, if there are changes or the --setup option is set. Thus, parameters stored in the setup file can be dumped using 'opcontrol --setup --verbose'. Signed-off-by: Robert Richter <rob...@am...> --- utils/opcontrol | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-) diff --git a/utils/opcontrol b/utils/opcontrol index 840235c..e32e76f 100644 --- a/utils/opcontrol +++ b/utils/opcontrol @@ -397,6 +397,8 @@ do_save_setup() if test "$XEN_RANGE"; then echo "XEN_RANGE=$XEN_RANGE" >> $SETUP_FILE fi + + dump_parameters; } @@ -855,6 +857,10 @@ do_options() fi if test "$SETUP" = "yes" -a "$DO_SETUP" != "yes"; then + if test -n "$VERBOSE"; then + dump_parameters + exit 0 + fi echo "No options specified for --setup." >&2 exit 1 fi @@ -869,7 +875,10 @@ do_options() exit 1 fi fi +} +dump_parameters() +{ vecho "Parameters used:" vecho "SESSION_DIR $SESSION_DIR" vecho "LOCK_FILE $LOCK_FILE" -- 1.6.0.1 |
From: Robert R. <rob...@am...> - 2008-11-17 14:25:04
|
On 13.11.08 16:01:40, Robert Richter wrote: > The parameter dump was located in do_init(). Values were printed as > read from the setup file. Parameters that have been updated with a > setup option were wrong. This patch fixes this. Also, parameters are > only dumped, if there are changes or the --setup option is set. Thus, > parameters stored in the setup file can be dumped using 'opcontrol > --setup --verbose'. > > Signed-off-by: Robert Richter <rob...@am...> I just realized that I removed accidentally the parameter dump for the --start and --start-daemon options (). Will send a patch that restores the previous behaviour. -Robert -- Advanced Micro Devices, Inc. Operating System Research Center email: rob...@am... |
From: Maynard J. <may...@us...> - 2008-11-17 21:38:38
|
Robert Richter wrote: > The parameter dump was located in do_init(). Values were printed as > read from the setup file. Parameters that have been updated with a Robert, I don't see the problem that you describe. If I start out, for example, with no separation, and then do the following: opcontrol --setup --separate=lib --start --verbose the verbose output shows the correct information (i.e., SEPARATE_LIB 1). > setup option were wrong. This patch fixes this. Also, parameters are > only dumped, if there are changes or the --setup option is set. Thus, > parameters stored in the setup file can be dumped using 'opcontrol > --setup --verbose'. I'm just not convinced we need this. We already have 'opcontrol --status' and the --verbose when starting. Why do we need to see all of the same information with 'opcontrol --setup'? -Maynard > > Signed-off-by: Robert Richter <rob...@am...> > --- > utils/opcontrol | 9 +++++++++ > 1 files changed, 9 insertions(+), 0 deletions(-) > > diff --git a/utils/opcontrol b/utils/opcontrol > index 840235c..e32e76f 100644 > --- a/utils/opcontrol > +++ b/utils/opcontrol > @@ -397,6 +397,8 @@ do_save_setup() > if test "$XEN_RANGE"; then > echo "XEN_RANGE=$XEN_RANGE" >> $SETUP_FILE > fi > + > + dump_parameters; > } > > > @@ -855,6 +857,10 @@ do_options() > fi > > if test "$SETUP" = "yes" -a "$DO_SETUP" != "yes"; then > + if test -n "$VERBOSE"; then > + dump_parameters > + exit 0 > + fi > echo "No options specified for --setup." >&2 > exit 1 > fi > @@ -869,7 +875,10 @@ do_options() > exit 1 > fi > fi > +} > > +dump_parameters() > +{ > vecho "Parameters used:" > vecho "SESSION_DIR $SESSION_DIR" > vecho "LOCK_FILE $LOCK_FILE" |
From: Robert R. <rob...@am...> - 2008-11-13 15:10:05
|
This adds an xsl script allowing the creation of one event per line dumps with opreport. The dump is usefull to get text formated output of all the data in the sampling buffer. The script is installed in the /usr/share/oprofile/xslt directory. Usage: opreport -X | xsltproc /usr/share/oprofile/xslt/opreport-denormalize.xsl - Signed-off-by: Robert Richter <rob...@am...> --- pp/Makefile.am | 23 ++++++++ pp/xslt/opreport-denormalize.xsl | 105 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 128 insertions(+), 0 deletions(-) create mode 100644 pp/xslt/opreport-denormalize.xsl diff --git a/pp/Makefile.am b/pp/Makefile.am index 1436473..adb34e9 100644 --- a/pp/Makefile.am +++ b/pp/Makefile.am @@ -43,3 +43,26 @@ oparchive_SOURCES = oparchive.cpp \ oparchive_options.h oparchive_options.cpp \ $(pp_common) oparchive_LDADD = $(common_libs) + +xslt_files = \ + xslt/opreport-denormalize.xsl + +install-data-local: + for i in ${xslt_files} ; do \ + dir=`dirname $$i` ; \ + mkdir -p $(DESTDIR)$(pkgdatadir)/$$dir ; \ + $(INSTALL_DATA) $(srcdir)/$$i $(DESTDIR)$(pkgdatadir)/$$i ; \ + done + +uninstall-local: + for i in ${xslt_files} ; do \ + dir=`dirname $$i` ; \ + if test -f $(DESTDIR)$(pkgdatadir)/$$i ; then \ + rm $(DESTDIR)$(pkgdatadir)/$$i ; \ + fi; \ + if test -d $(DESTDIR)$(pkgdatadir)/$$dir ; then \ + rmdir --ignore-fail-on-non-empty $(DESTDIR)$(pkgdatadir)/$$dir ; \ + fi; \ + done + +EXTRA_DIST = $(xslt_files) diff --git a/pp/xslt/opreport-denormalize.xsl b/pp/xslt/opreport-denormalize.xsl new file mode 100644 index 0000000..8437827 --- /dev/null +++ b/pp/xslt/opreport-denormalize.xsl @@ -0,0 +1,105 @@ +<xsl:stylesheet version="1.0" +xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> + +<xsl:key name="get_class" match="class" use="@name" /> +<xsl:key name="get_event" match="eventsetup" use="@id" /> +<xsl:key name="get_symbol" match="symboldata" use="@id" /> + +<xsl:template match="/"> + +<xsl:text>schemaversion: </xsl:text><xsl:value-of select="profile/@schemaversion"/><xsl:text>
</xsl:text> +<xsl:text>cputype : </xsl:text><xsl:value-of select="profile/@cputype"/><xsl:text>
</xsl:text> +<xsl:text>processor : </xsl:text><xsl:value-of select="profile/@processor"/><xsl:text>
</xsl:text> +<xsl:text>separatedcpus: </xsl:text><xsl:value-of select="profile/@separatedcpus"/><xsl:text>
</xsl:text> +<xsl:text>mhz : </xsl:text><xsl:value-of select="profile/@mhz"/><xsl:text>
</xsl:text> +<xsl:text>title : </xsl:text><xsl:value-of select="profile/@title"/><xsl:text>
</xsl:text> +<xsl:text>
</xsl:text> + +<xsl:for-each select="profile/binary"> + +<xsl:for-each select="count"> +<xsl:apply-templates select="key('get_class', @class)"/> +<xsl:text>	</xsl:text> +<xsl:value-of select="../@name"/> +<xsl:text>	</xsl:text> +<xsl:text>(mod)	</xsl:text> +<xsl:text>(sym)	</xsl:text> +<xsl:number value="."/> +<xsl:text>
</xsl:text> +</xsl:for-each> + +<xsl:for-each select="symbol"> + +<xsl:for-each select="count"> +<xsl:apply-templates select="key('get_class', @class)"/> +<xsl:text>	</xsl:text> +<xsl:value-of select="../../@name"/> +<xsl:text>	</xsl:text> +<xsl:text>(mod)	</xsl:text> +<xsl:apply-templates select="key('get_symbol', ../@idref)"/> +<xsl:text>	</xsl:text> +<xsl:number value="."/> +<xsl:text>
</xsl:text> +</xsl:for-each> + +</xsl:for-each> + +<xsl:for-each select="module"> + +<xsl:for-each select="count"> +<xsl:apply-templates select="key('get_class', @class)"/> +<xsl:text>	</xsl:text> +<xsl:value-of select="../../@name"/> +<xsl:text>	</xsl:text> +<xsl:value-of select="../@name"/> +<xsl:text>	</xsl:text> +<xsl:text>(sym)	</xsl:text> +<xsl:number value="."/> +<xsl:text>
</xsl:text> +</xsl:for-each> + +<xsl:for-each select="symbol"> + +<xsl:for-each select="count"> +<xsl:apply-templates select="key('get_class', @class)"/> +<xsl:text>	</xsl:text> +<xsl:value-of select="../../../@name"/> +<xsl:text>	</xsl:text> +<xsl:value-of select="../../@name"/> +<xsl:text>	</xsl:text> +<xsl:apply-templates select="key('get_symbol', ../@idref)"/> +<xsl:text>	</xsl:text> +<xsl:number value="."/> +<xsl:text>
</xsl:text> +</xsl:for-each> + +</xsl:for-each> + +</xsl:for-each> + +</xsl:for-each> + +</xsl:template> + +<xsl:template match="class"> +<xsl:apply-templates select="key('get_event', @event)"/> +<xsl:text>	</xsl:text> +<xsl:value-of select="@cpu"/> +</xsl:template> + +<xsl:template match="eventsetup"> +<xsl:value-of select="@eventname"/> +<xsl:text>	</xsl:text> +<xsl:value-of select="@unitmask"/> +<xsl:text>	</xsl:text> +<xsl:value-of select="@setupcount"/> +</xsl:template> + +<xsl:template match="symboldata"> +<xsl:value-of select="@name"/> +<xsl:text>(</xsl:text> +<xsl:value-of select="@startingaddr"/> +<xsl:text>)</xsl:text> +</xsl:template> + +</xsl:stylesheet> -- 1.6.0.1 |
From: Robert R. <rob...@am...> - 2008-11-13 15:10:12
|
I figured out that there is no way to reset setup parameters. The only way was removing the setup file in /root/.oprofile/daemonrc. So I added the defaults option that removes the file. If there is no setup file the default values will be set. The option can be combined with other setup options such as: opcontrol --defaults --no-vmlinux --buffer-size=640000 This resets all values to default except buffer size and vmlinux. Signed-off-by: Robert Richter <rob...@am...> --- utils/opcontrol | 13 +++++++++++++ 1 files changed, 13 insertions(+), 0 deletions(-) diff --git a/utils/opcontrol b/utils/opcontrol index c946e34..efdff46 100644 --- a/utils/opcontrol +++ b/utils/opcontrol @@ -113,6 +113,7 @@ opcontrol: usage: -v/--version show version --init loads the oprofile module and oprofilefs --setup give setup arguments (may be omitted) + --defaults reset setup values to defaults --status show configuration --start-daemon start daemon without starting profiling -s/--start start data collection @@ -240,6 +241,9 @@ do_init_daemon_vars() if test -n "$SESSION_DIR"; then SAVED=$SESSION_DIR fi + if test "$DEFAULTS" = "yes"; then + rm -f "$SETUP_FILE" + fi do_load_setup if test -n "$SAVED"; then SESSION_DIR=$SAVED @@ -655,6 +659,11 @@ do_options() SETUP=yes ;; + --defaults) + # also early option code existing + DO_SETUP=yes + ;; + --start-daemon) if test "$KERNEL_SUPPORT" != "yes"; then echo "$arg unsupported. use \"--start\"" >&2 @@ -1674,6 +1683,7 @@ check_options_early() { OPHELP="$OPDIR/ophelp" + DEFAULTS=no for i in $@; do # added to handle arg=val parameters @@ -1697,6 +1707,9 @@ check_options_early() VERBOSE=$val fi ;; + --defaults) + DEFAULTS=yes + ;; --session-dir) error_if_empty $arg $val SESSION_DIR="$val" -- 1.6.0.1 |
From: Maynard J. <may...@us...> - 2008-11-17 22:35:31
|
Robert Richter wrote: > I figured out that there is no way to reset setup parameters. The only > way was removing the setup file in /root/.oprofile/daemonrc. So I > added the defaults option that removes the file. If there is no setup > file the default values will be set. The option can be combined with > other setup options such as: > > opcontrol --defaults --no-vmlinux --buffer-size=640000 I like the idea of some opcontrol option to clear out the cached setup parameters. But the way it's implemented below, the user MUST include at least the --vmlinux or --no-vmlinux option along with it. I think for ease of use, it would be best to make it an exclusive option (like --reset); then just simply remove the SETUP_FILE. What do you think? -Maynard > > This resets all values to default except buffer size and vmlinux. > > Signed-off-by: Robert Richter <rob...@am...> > --- > utils/opcontrol | 13 +++++++++++++ > 1 files changed, 13 insertions(+), 0 deletions(-) > > diff --git a/utils/opcontrol b/utils/opcontrol > index c946e34..efdff46 100644 > --- a/utils/opcontrol > +++ b/utils/opcontrol > @@ -113,6 +113,7 @@ opcontrol: usage: > -v/--version show version > --init loads the oprofile module and oprofilefs > --setup give setup arguments (may be omitted) > + --defaults reset setup values to defaults > --status show configuration > --start-daemon start daemon without starting profiling > -s/--start start data collection > @@ -240,6 +241,9 @@ do_init_daemon_vars() > if test -n "$SESSION_DIR"; then > SAVED=$SESSION_DIR > fi > + if test "$DEFAULTS" = "yes"; then > + rm -f "$SETUP_FILE" > + fi > do_load_setup > if test -n "$SAVED"; then > SESSION_DIR=$SAVED > @@ -655,6 +659,11 @@ do_options() > SETUP=yes > ;; > > + --defaults) > + # also early option code existing > + DO_SETUP=yes > + ;; > + > --start-daemon) > if test "$KERNEL_SUPPORT" != "yes"; then > echo "$arg unsupported. use \"--start\"" >&2 > @@ -1674,6 +1683,7 @@ check_options_early() > { > > OPHELP="$OPDIR/ophelp" > + DEFAULTS=no > > for i in $@; do > # added to handle arg=val parameters > @@ -1697,6 +1707,9 @@ check_options_early() > VERBOSE=$val > fi > ;; > + --defaults) > + DEFAULTS=yes > + ;; > --session-dir) > error_if_empty $arg $val > SESSION_DIR="$val" |
From: Robert R. <rob...@am...> - 2008-11-13 15:10:14
|
Signed-off-by: Robert Richter <rob...@am...> --- daemon/opd_events.c | 6 +- daemon/opd_events.h | 4 +- daemon/opd_mangling.c | 2 +- daemon/opd_mangling.h | 2 +- daemon/opd_sfile.c | 2 +- daemon/opd_trans.c | 18 ++-- events/x86-64/family10/events | 2 +- utils/opcontrol | 164 ++++++++++++++++++++-------------------- 8 files changed, 100 insertions(+), 100 deletions(-) diff --git a/daemon/opd_events.c b/daemon/opd_events.c index 81a87d2..0ecba93 100644 --- a/daemon/opd_events.c +++ b/daemon/opd_events.c @@ -35,7 +35,7 @@ static double cpu_speed; static void malformed_events(void) { fprintf(stderr, "oprofiled: malformed events passed " - "on the command line\n"); + "on the command line\n"); exit(EXIT_FAILURE); } @@ -141,8 +141,8 @@ struct opd_event * find_counter_event(unsigned long counter) void fill_header(struct opd_header * header, unsigned long counter, - vma_t anon_start, vma_t cg_to_anon_start, - int is_kernel, int cg_to_is_kernel, + vma_t anon_start, vma_t cg_to_anon_start, + int is_kernel, int cg_to_is_kernel, int spu_samples, uint64_t embed_offset, time_t mtime) { struct opd_event * event = find_counter_event(counter); diff --git a/daemon/opd_events.h b/daemon/opd_events.h index 3bd0106..1e8b801 100644 --- a/daemon/opd_events.h +++ b/daemon/opd_events.h @@ -40,8 +40,8 @@ struct opd_header; /** fill the sample file header with event info etc. */ void fill_header(struct opd_header * header, unsigned long counter, - vma_t anon_start, vma_t anon_end, - int is_kernel, int cg_to_is_kernel, + vma_t anon_start, vma_t anon_end, + int is_kernel, int cg_to_is_kernel, int spu_samples, uint64_t embed_offset, time_t mtime); #endif /* OPD_EVENTS_H */ diff --git a/daemon/opd_mangling.c b/daemon/opd_mangling.c index 08a6079..b4768a6 100644 --- a/daemon/opd_mangling.c +++ b/daemon/opd_mangling.c @@ -138,7 +138,7 @@ mangle_filename(struct sfile * last, struct sfile const * sf, int counter, int c } -int opd_open_sample_file(odb_t * file, struct sfile * last, +int opd_open_sample_file(odb_t *file, struct sfile *last, struct sfile * sf, int counter, int cg) { char * mangled; diff --git a/daemon/opd_mangling.h b/daemon/opd_mangling.h index 0e46ec4..d1b2a78 100644 --- a/daemon/opd_mangling.h +++ b/daemon/opd_mangling.h @@ -27,7 +27,7 @@ struct sfile; * * Returns 0 on success. */ -int opd_open_sample_file(odb_t * file, struct sfile * last, +int opd_open_sample_file(odb_t *file, struct sfile *last, struct sfile * sf, int counter, int cg); #endif /* OPD_MANGLING_H */ diff --git a/daemon/opd_sfile.c b/daemon/opd_sfile.c index 03ebf55..90abc69 100644 --- a/daemon/opd_sfile.c +++ b/daemon/opd_sfile.c @@ -437,7 +437,7 @@ void sfile_log_sample(struct transient const * trans) if (trans->current->anon) pc -= trans->current->anon->start; - + if (vsamples) verbose_sample(trans, pc); diff --git a/daemon/opd_trans.c b/daemon/opd_trans.c index 3041169..91c2ad8 100644 --- a/daemon/opd_trans.c +++ b/daemon/opd_trans.c @@ -82,7 +82,7 @@ int enough_remaining(struct transient * trans, size_t size) } -static void opd_put_sample(struct transient * trans, unsigned long long pc) +static void opd_put_sample(struct transient *trans, unsigned long long pc) { unsigned long long event; @@ -194,7 +194,7 @@ static void code_cookie_switch(struct transient * trans) if (vmisc) { char const * name = verbose_cookie(trans->cookie); verbprintf(vmisc, "COOKIE_SWITCH to cookie %s(%llx)\n", - name, trans->cookie); + name, trans->cookie); } } @@ -246,11 +246,11 @@ static void code_xen_enter(struct transient * trans) verbprintf(vmisc, "XEN_ENTER_SWITCH to xen\n"); trans->in_kernel = 1; trans->current = NULL; - /* subtlety: we must keep trans->cookie cached, even though it's - * meaningless for Xen - we won't necessarily get a cookie switch - * on Xen exit. See comments in opd_sfile.c. It seems that we can - * get away with in_kernel = 1 as long as we supply the correct - * Xen image, and its address range in startup find_kernel_image + /* subtlety: we must keep trans->cookie cached, even though it's + * meaningless for Xen - we won't necessarily get a cookie switch + * on Xen exit. See comments in opd_sfile.c. It seems that we can + * get away with in_kernel = 1 as long as we supply the correct + * Xen image, and its address range in startup find_kernel_image * is modified to look in the Xen image also */ } @@ -264,13 +264,13 @@ handler_t handlers[LAST_CODE + 1] = { &code_cpu_switch, &code_cookie_switch, &code_kernel_enter, - &code_user_enter, + &code_user_enter, &code_module_loaded, /* tgid handled differently */ &code_unknown, &code_trace_begin, &code_unknown, - &code_xen_enter, + &code_xen_enter, #if defined(__powerpc__) &code_spu_profiling, &code_spu_ctx_switch, diff --git a/events/x86-64/family10/events b/events/x86-64/family10/events index 54e6b81..b905e6c 100644 --- a/events/x86-64/family10/events +++ b/events/x86-64/family10/events @@ -48,7 +48,7 @@ event:0x47 counters:0,1,2,3 um:zero minimum:500 name:MISALIGNED_ACCESSES : Misal event:0x48 counters:0,1,2,3 um:zero minimum:500 name:MICRO_ARCH_LATE_CANCEL_ACCESS : Microarchitectural late cancel of an access event:0x49 counters:0,1,2,3 um:zero minimum:500 name:MICRO_ARCH_EARLY_CANCEL_ACCESS : Microarchitectural early cancel of an access event:0x4a counters:0,1,2,3 um:ecc minimum:500 name:1_BIT_ECC_ERRORS : Single-bit ECC errors recorded by scrubber -event:0x4b counters:0,1,2,3 um:prefetch minimum:500 name:PREFETCH_INSTRUCTIONS_DISPATCHED : The number of prefetch instructions dispatched by the decoder +event:0x4b counters:0,1,2,3 um:prefetch minimum:500 name:PREFETCH_INSTRUCTIONS_DISPATCHED : The number of prefetch instructions dispatched by the decoder event:0x4c counters:0,1,2,3 um:locked_instruction_dcache_miss minimum:500 name:LOCKED_INSTRUCTIONS_DCACHE_MISSES : The number of dta cache misses by locked instructions. event:0x4d counters:0,1,2,3 um:l1_dtlb_hit minimum:500 name:L1_DTLB_HIT : L1 DTLB hit event:0x52 counters:0,1,2,3 um:soft_prefetch minimum:500 name:INEFFECTIVE_SW_PREFETCHES : Number of software prefetches that did not fetch data outside of processor core diff --git a/utils/opcontrol b/utils/opcontrol index 30390db..7378928 100644 --- a/utils/opcontrol +++ b/utils/opcontrol @@ -15,7 +15,7 @@ SYSCTL=do_sysctl # A replacement function for the sysctl (procps package) utility which is -# missing on some distribution (e.g. slack 7.0). +# missing on some distribution (e.g. slack 7.0). # Handles only the -w option of sysctl. do_sysctl() { @@ -44,7 +44,7 @@ error_if_empty() { if test -z "$2"; then echo "No value given for option $1" >&2 - do_help + do_help exit 1 fi } @@ -85,7 +85,7 @@ move_and_remove() # verbose echo vecho() { - if test -n "$VERBOSE"; then + if test -n "$VERBOSE"; then echo $@ fi } @@ -102,10 +102,10 @@ is_tool_available() return 0 } - + # print help message do_help() -{ +{ echo "opcontrol: usage: -l/--list-events list event types and unit masks -?/--help this message @@ -123,7 +123,7 @@ do_help() --save=name save data from current session to session_name --deinit unload the oprofile module and oprofilefs - -e/--event=eventspec + -e/--event=eventspec Choose an event. May be specified multiple times. Of the form "default" or "name:count:unitmask:kernel:user", where : @@ -237,17 +237,17 @@ do_init_daemon_vars() # load settings from config file, keeping command-line value # of SESSION_DIR if necessary. if test -n "$SESSION_DIR"; then - SAVED=$SESSION_DIR + SAVED=$SESSION_DIR fi do_load_setup if test -n "$SAVED"; then - SESSION_DIR=$SAVED + SESSION_DIR=$SAVED fi # daemon parameters (as in op_config.h). Note that we preserve # any previous value of SESSION_DIR if test -z "$SESSION_DIR"; then - SESSION_DIR="/var/lib/oprofile" + SESSION_DIR="/var/lib/oprofile" fi LOCK_FILE="$SESSION_DIR/lock" SAMPLES_DIR="$SESSION_DIR/samples" @@ -313,7 +313,7 @@ do_init() decide_oprofile_device DEFAULT_EVENT=`$OPHELP --get-default-event` - + IS_TIMER=0 IS_PERFMON=0 if test "$CPUTYPE" = "timer"; then @@ -331,12 +331,12 @@ do_init() create_dir() { if test ! -d "$1"; then - mkdir -p "$1" - if test "$?" != "0"; then - echo "Couldn't mkdir -p $1" >&2 - exit 1 - fi - chmod 755 "$1" + mkdir -p "$1" + if test "$?" != "0"; then + echo "Couldn't mkdir -p $1" >&2 + exit 1 + fi + chmod 755 "$1" fi } @@ -368,7 +368,7 @@ do_save_setup() echo "CHOSEN_EVENTS_${f}=$GOTEVENT" >>$SETUP_FILE done fi - + echo "NR_CHOSEN=$NR_CHOSEN" >>$SETUP_FILE echo "SEPARATE_LIB=$SEPARATE_LIB" >> $SETUP_FILE @@ -391,13 +391,13 @@ do_save_setup() echo "NOTE_SIZE=$NOTE_SIZE" >> $SETUP_FILE fi echo "CALLGRAPH=$CALLGRAPH" >> $SETUP_FILE - if test "$KERNEL_RANGE"; then - echo "KERNEL_RANGE=$KERNEL_RANGE" >> $SETUP_FILE - fi + if test "$KERNEL_RANGE"; then + echo "KERNEL_RANGE=$KERNEL_RANGE" >> $SETUP_FILE + fi echo "XENIMAGE=$XENIMAGE" >> $SETUP_FILE - if test "$XEN_RANGE"; then - echo "XEN_RANGE=$XEN_RANGE" >> $SETUP_FILE - fi + if test "$XEN_RANGE"; then + echo "XEN_RANGE=$XEN_RANGE" >> $SETUP_FILE + fi } @@ -494,8 +494,8 @@ get_image_range() vecho "KERNEL_RANGE $KERNEL_RANGE" fi } - - + + # validate --separate= parameters. This function is called with IFS=, # so on each argument is splitted validate_separate_args() @@ -514,7 +514,7 @@ validate_separate_args() ;; kernel) # first implied by second - SEPARATE_LIB=1 + SEPARATE_LIB=1 SEPARATE_KERNEL=1 ;; thread) @@ -548,7 +548,7 @@ verify_counters() { if test "$IS_TIMER" = 1; then if test "$NR_CHOSEN" != 0; then - echo "You cannot specify any performance counter events" >&2 + echo "You cannot specify any performance counter events" >&2 echo "because OProfile is in timer mode." >&2 exit 1 fi @@ -632,12 +632,12 @@ do_options() printf %s $1 "$possibleval" | grep ^- >/dev/null 2>&1 if test "$?" != "0"; then val=$possibleval - if [ "$#" -ge 1 ]; then + if [ "$#" -ge 1 ]; then shift fi fi fi - + case "$arg" in --init) @@ -842,11 +842,11 @@ do_options() EXCLUSIVE_ARGV="$arg" exec $OPHELP ;; - + *) echo "Unknown option \"$arg\". See opcontrol --help" >&2 exit 1 - ;; + ;; esac done @@ -902,7 +902,7 @@ do_options() if test "$CPU_BUF_SIZE" != "0"; then vecho "CPU_BUF_SIZE $CPU_BUF_SIZE" else - vecho "CPU_BUF_SIZE default value" + vecho "CPU_BUF_SIZE default value" fi fi @@ -968,7 +968,7 @@ do_kill_daemon() COUNT=0 while test -n "`pidof oprofiled`" do - sleep 1 + sleep 1 # because oprofiled only sets a variable inside the # signal handler itself, it's possible to miss a @@ -1002,7 +1002,7 @@ rm_devices_24() } -create_devices_24() +create_devices_24() { MAJOR_NR=`grep oprof /proc/devices | awk '{print $1}'` @@ -1095,8 +1095,8 @@ is_non_cell_ppc64_variant() return 1; ;; *) - return 0; - ;; + return 0; + ;; esac } @@ -1119,21 +1119,21 @@ check_event_mapping_data() MMCR0_VAL=`echo $MMCR0 | awk -F: '{print $2}'` MMCR1_VAL=`echo $MMCR1 | awk -F: '{print $2}'` MMCRA_VAL=`echo $MMCRA | awk -F: '{print $2}'` - + ## mmcr0, mmcr1, mmcra are for all ppc64 counters # Save first event mmcr settings to compare with additional # events. All events must have the same mmcrx values i.e. be in # the same group. Only one event is assigned per counter, # hence there will not be a conflict on the counters - if [ "$MMCR0_CK_VAL" = "" ] ; then + if [ "$MMCR0_CK_VAL" = "" ] ; then MMCR0_CK_VAL=$MMCR0_VAL MMCR1_CK_VAL=$MMCR1_VAL MMCRA_CK_VAL=$MMCRA_VAL else - # make sure all events are from the same group - if test $MMCR0_CK_VAL != $MMCR0_VAL \ - -o $MMCR1_CK_VAL != $MMCR1_VAL \ - -o $MMCRA_CK_VAL != $MMCRA_VAL ; then + # make sure all events are from the same group + if test $MMCR0_CK_VAL != $MMCR0_VAL \ + -o $MMCR1_CK_VAL != $MMCR1_VAL \ + -o $MMCRA_CK_VAL != $MMCRA_VAL ; then echo "ERROR: The specified events are not from the same group." echo " Use 'opcontrol --list-events' to see event groupings." exit 1 @@ -1141,7 +1141,7 @@ check_event_mapping_data() fi # Check if all user/kernel flags per-counter are matching. - if [ "$USER_CK" = "" ] ; then + if [ "$USER_CK" = "" ] ; then USER_CK=$USER KERNEL_CK=$KERNEL else @@ -1165,7 +1165,7 @@ check_event_mapping_data() fi fi if [ "$event_num" = "1" ] ; then - # CYCLES is compatible with any event except SPU_CYCLES + # CYCLES is compatible with any event except SPU_CYCLES if [ "$SPU_CYCLES" = "2" ] ; then echo "ERROR: PPU CYCLES and SPU CYCLES cannot be counted simultaneously." >&2 exit 1 @@ -1174,9 +1174,9 @@ check_event_mapping_data() return fi else - if [ "$SPU_CYCLES" = "2" ] ; then - echo "ERROR: SPU CYCLES cannot be counted with any other events." >&2 - exit 1 + if [ "$SPU_CYCLES" = "2" ] ; then + echo "ERROR: SPU CYCLES cannot be counted with any other events." >&2 + exit 1 fi fi len=`echo -n $event_num | wc -m` @@ -1188,10 +1188,10 @@ check_event_mapping_data() if test $GRP_NUM_CK_VAL != $GRP_NUM_VAL ; then echo "ERROR: The specified events are not from the same group." >&2 echo " Use 'opcontrol --list-events' to see event groupings." >&2 - exit 1 - fi - fi - fi + exit 1 + fi + fi + fi } @@ -1277,8 +1277,8 @@ do_param_setup() check_event_mapping_data if test "$EVENT" = "SPU_CYCLES"; then - if test "$SEPARATE_KERNEL" = "1"; then - SEPARATE_KERNEL=0 + if test "$SEPARATE_KERNEL" = "1"; then + SEPARATE_KERNEL=0 echo "Ignoring --separate=kernel option with SPU_CYCLES" fi if test "$SEPARATE_LIB" = "0"; then @@ -1307,7 +1307,7 @@ do_param_setup() set_param rtc_value $COUNT $SYSCTL -w dev.oprofile.rtc_value=$COUNT else - set_ctr_param $CTR enabled 1 + set_ctr_param $CTR enabled 1 set_ctr_param $CTR event $EVENT_VAL let loop_count=1 for i in ${EVENT_STR}; do @@ -1319,7 +1319,7 @@ do_param_setup() set_ctr_param "" $KEY $VAL fi let loop_count="$loop_count"+1 - done + done set_ctr_param $CTR count $COUNT set_ctr_param $CTR kernel $KERNEL set_ctr_param $CTR user $USER @@ -1336,7 +1336,7 @@ do_param_setup() # profiling. All per-counter user/kernel flags must match. # This condition is checked previously by check_event_mapping_data. # This statement uses the last event's user/kernel flags to set - # /dev/oprofile/enable_kernel and /dev/oprofile/enable_user. + # /dev/oprofile/enable_kernel and /dev/oprofile/enable_user. is_non_cell_ppc64_variant $CPUTYPE if test $? -ne 0 ; then set_param "enable_kernel" $KERNEL @@ -1348,7 +1348,7 @@ do_param_setup() do_start_daemon() { - + if test -f "$LOCK_FILE"; then kill -0 `cat $LOCK_FILE` 2>/dev/null if test "$?" -eq 0; then @@ -1358,7 +1358,7 @@ do_start_daemon() rm -f "$LOCK_FILE" fi fi - + do_setup check_valid_args get_image_range "linux" @@ -1383,7 +1383,7 @@ do_start_daemon() if ! test "$XENIMAGE" = "none"; then OPD_ARGS="$OPD_ARGS --xen-image=$XENIMAGE --xen-range=$XEN_RANGE" fi - + if ! test -z "$IMAGE_FILTER"; then OPD_ARGS="$OPD_ARGS --image=$IMAGE_FILTER" fi @@ -1395,7 +1395,7 @@ do_start_daemon() vecho "executing oprofiled $OPD_ARGS" $OPROFILED $OPD_ARGS - + COUNT=0 while ! test -f "$SESSION_DIR/lock" do @@ -1438,7 +1438,7 @@ do_status() echo "Event $f: $GOTEVENT" done fi - + SEPARATE="" if test "$SEPARATE_LIB" = "1"; then SEPARATE="library"; @@ -1552,11 +1552,11 @@ hup_daemon() { if test -f "$LOCK_FILE"; then echo -n "Signalling daemon... " - kill -HUP `cat $LOCK_FILE` + kill -HUP `cat $LOCK_FILE` echo "done" fi } - + # move all the sample files to a sample directory do_save_session() @@ -1629,7 +1629,7 @@ do_operations() if test "$STATUS" = "yes"; then do_status fi - + if test "$SETUP" = "yes"; then check_valid_args do_save_setup @@ -1668,7 +1668,7 @@ do_operations() do_deinit fi } - + # early check for --version, --help and --session-dir check_options_early() { @@ -1695,7 +1695,7 @@ check_options_early() SESSION_DIR="$val" # do not exit early ;; - + esac done } @@ -1780,24 +1780,24 @@ check_oprofile_available do_init if test `id -u` != "0"; then if test -z "$2"; then - case "$1" in - --dump|-d) - ONLY_DUMP=yes - do_dump - exit 0; - ;; - --list-events|-l) - exec $OPHELP - exit 0; - ;; - *) - echo "Normal users are limited to either '--dump' or '--list-events'." >&2 - exit 1 - ;; + case "$1" in + --dump|-d) + ONLY_DUMP=yes + do_dump + exit 0; + ;; + --list-events|-l) + exec $OPHELP + exit 0; + ;; + *) + echo "Normal users are limited to either '--dump' or '--list-events'." >&2 + exit 1 + ;; esac else - echo "Normal users are limited to either '--dump' or '--list-events'." >&2 - exit 1 + echo "Normal users are limited to either '--dump' or '--list-events'." >&2 + exit 1 fi fi -- 1.6.0.1 |
From: Robert R. <rob...@am...> - 2008-11-13 15:10:29
|
Signed-off-by: Robert Richter <rob...@am...> --- utils/opcontrol | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/utils/opcontrol b/utils/opcontrol index 7378928..7cfddbf 100644 --- a/utils/opcontrol +++ b/utils/opcontrol @@ -945,7 +945,7 @@ do_stop() do_kill_daemon() { if test ! -f "$LOCK_FILE"; then - # no error message, do_kill_deamon imply stop and stop already + # no error message, do_kill_daemon imply stop and stop already # output "Daemon not running" return fi -- 1.6.0.1 |
From: Maynard J. <may...@us...> - 2008-11-13 21:10:23
|
Robert Richter wrote: > This patch series contains some random patches I created over the time > when working with oprofile. Robert, your patch #3 caught my eye as something I *think* was fixed in late August. If your patches are not against current cvs, please re-gen them and re-post. By the way, please add an entry in the ChangeLog file for each patch, too. :-) Thanks. -Maynard > > -Robert > > > > > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > oprofile-list mailing list > opr...@li... > https://lists.sourceforge.net/lists/listinfo/oprofile-list |
From: Robert R. <rob...@am...> - 2008-11-14 08:58:45
|
On 13.11.08 15:10:14, Maynard Johnson wrote: > Robert Richter wrote: >> This patch series contains some random patches I created over the time >> when working with oprofile. > Robert, your patch #3 caught my eye as something I *think* was fixed in > late August. If your patches are not against current cvs, please re-gen > them and re-post. By the way, please add an entry in the ChangeLog file > for each patch, too. :-) Patches are on top of yesterdays cvs. #3 is for: $ cvs status -l utils/opcontrol =================================================================== File: opcontrol Status: Up-to-date Working revision: 1.152 Repository revision: 1.152 /cvsroot/oprofile/oprofile/utils/opcontrol,v Sticky Tag: (none) Sticky Date: (none) Sticky Options: (none) Though it might be fixed in between, I think it is worth to have --verbose as early option to be able to use vecho also early. Will send a change log patch soon. -Robert -- Advanced Micro Devices, Inc. Operating System Research Center email: rob...@am... |
From: Robert R. <rob...@am...> - 2008-11-14 09:32:27
|
Signed-off-by: Robert Richter <rob...@am...> --- doc/opcontrol.1.in | 5 +++++ doc/oprofile.xml | 7 +++++++ 2 files changed, 12 insertions(+), 0 deletions(-) diff --git a/doc/opcontrol.1.in b/doc/opcontrol.1.in index b9cf61e..8b68746 100644 --- a/doc/opcontrol.1.in +++ b/doc/opcontrol.1.in @@ -41,6 +41,11 @@ in ~root/.oprofile/daemonrc. Optional. Show configuration information. .br .TP +.BI "--defaults" +Reset setup values to defaults. Can be combined with the --setup +option. +.br +.TP .BI "--start-daemon" Start the oprofile daemon without starting profiling. Not available in 2.2/2.4 kernels. diff --git a/doc/oprofile.xml b/doc/oprofile.xml index 97e214e..69c9489 100644 --- a/doc/oprofile.xml +++ b/doc/oprofile.xml @@ -557,6 +557,13 @@ The <command>opcontrol</command> script provides the following actions : </para></listitem> </varlistentry> <varlistentry> + <term><option>--defaults</option></term> + <listitem><para> + Reset setup values to defaults. Can be combined + with the <option>--setup</option> option. + </para></listitem> + </varlistentry> + <varlistentry> <term><option>--status</option></term> <listitem><para> Show configuration information. -- 1.6.0.1 |
From: Robert R. <rob...@am...> - 2008-11-14 09:32:40
|
Signed-off-by: Robert Richter <rob...@am...> --- ChangeLog | 10 ++++++++++ 1 files changed, 10 insertions(+), 0 deletions(-) diff --git a/ChangeLog b/ChangeLog index 61c1621..9d2cc9b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2008-11-13 Robert Richter <rob...@am...> + * opcontrol: fix whitespaces + * opcontrol: fix typo + * opcontrol: fix vecho output + * opcontrol: move parameter dump to do_save_setup() + * opcontrol: fix help message + * opcontrol: deinit: kill daemon only if running + * opcontrol: adding --defaults option + * opreport: add xsl script for denormalized text dumps + * opcontrol: adding --defaults option to the documentation 2008-11-12 Andi Kleen <an...@fi...> * libop/op_events.c -- 1.6.0.1 |
From: Robert R. <rob...@am...> - 2008-11-17 15:13:36
|
Second version contains: opcontrol: adding --defaults option to the documentation opcontrol: restore parameter dump of --start and -start-daemon options oprofile: add change log entries |
From: Robert R. <rob...@am...> - 2008-11-17 15:13:42
|
I my previous patch: opcontrol: move parameter dump to do_save_setup() I accidentally removed the parameter dump for the --start and --start-daemon options. This patch restores the previous behaviour. Signed-off-by: Robert Richter <rob...@am...> --- utils/opcontrol | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/utils/opcontrol b/utils/opcontrol index efdff46..5d63c91 100644 --- a/utils/opcontrol +++ b/utils/opcontrol @@ -1368,6 +1368,7 @@ do_start_daemon() fi fi + dump_parameters do_setup check_valid_args get_image_range "linux" -- 1.6.0.1 |
From: Robert R. <rob...@am...> - 2008-11-17 15:13:48
|
Signed-off-by: Robert Richter <rob...@am...> --- doc/opcontrol.1.in | 5 +++++ doc/oprofile.xml | 7 +++++++ 2 files changed, 12 insertions(+), 0 deletions(-) diff --git a/doc/opcontrol.1.in b/doc/opcontrol.1.in index b9cf61e..8b68746 100644 --- a/doc/opcontrol.1.in +++ b/doc/opcontrol.1.in @@ -41,6 +41,11 @@ in ~root/.oprofile/daemonrc. Optional. Show configuration information. .br .TP +.BI "--defaults" +Reset setup values to defaults. Can be combined with the --setup +option. +.br +.TP .BI "--start-daemon" Start the oprofile daemon without starting profiling. Not available in 2.2/2.4 kernels. diff --git a/doc/oprofile.xml b/doc/oprofile.xml index 97e214e..69c9489 100644 --- a/doc/oprofile.xml +++ b/doc/oprofile.xml @@ -557,6 +557,13 @@ The <command>opcontrol</command> script provides the following actions : </para></listitem> </varlistentry> <varlistentry> + <term><option>--defaults</option></term> + <listitem><para> + Reset setup values to defaults. Can be combined + with the <option>--setup</option> option. + </para></listitem> + </varlistentry> + <varlistentry> <term><option>--status</option></term> <listitem><para> Show configuration information. -- 1.6.0.1 |
From: Robert R. <rob...@am...> - 2008-11-17 15:13:53
|
Signed-off-by: Robert Richter <rob...@am...> --- ChangeLog | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 51 insertions(+), 0 deletions(-) diff --git a/ChangeLog b/ChangeLog index 61c1621..e7a858c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,54 @@ +2008-11-17 Robert Richter <rob...@am...> + + * utils/opcontrol: restore parameter dump of --start and + -start-daemon options + +2008-11-17 Robert Richter <rob...@am...> + + * doc/opcontrol.1.in + * doc/oprofile.xml: adding --defaults option to the documentation + +2008-11-13 Robert Richter <rob...@am...> + + * pp/Makefile.am + * pp/xslt/opreport-denormalize.xsl: add xsl script for + denormalized text dumps + +2008-11-13 Robert Richter <rob...@am...> + + * utils/opcontrol: adding --defaults option + +2008-11-13 Robert Richter <rob...@am...> + + * utils/opcontrol: deinit: kill daemon only if running + +2008-11-13 Robert Richter <rob...@am...> + + * utils/opcontrol: fix help message + +2008-11-13 Robert Richter <rob...@am...> + + * utils/opcontrol: move parameter dump to do_save_setup() + +2008-11-13 Robert Richter <rob...@am...> + + * utils/opcontrol: fix vecho output + +2008-11-13 Robert Richter <rob...@am...> + + * utils/opcontrol: fix typo + +2008-11-13 Robert Richter <rob...@am...> + + * daemon/opd_events.c + * daemon/opd_events.h + * daemon/opd_mangling.c + * daemon/opd_mangling.h + * daemon/opd_sfile.c + * daemon/opd_trans.c + * events/x86-64/family10/events + * utils/opcontrol: fix whitespaces + 2008-11-12 Andi Kleen <an...@fi...> * libop/op_events.c -- 1.6.0.1 |
From: Maynard J. <may...@us...> - 2008-11-14 16:46:53
|
Robert Richter wrote: > Signed-off-by: Robert Richter <rob...@am...> > --- > daemon/opd_events.c | 6 +- > daemon/opd_events.h | 4 +- > daemon/opd_mangling.c | 2 +- > daemon/opd_mangling.h | 2 +- > daemon/opd_sfile.c | 2 +- > daemon/opd_trans.c | 18 ++-- > events/x86-64/family10/events | 2 +- > utils/opcontrol | 164 ++++++++++++++++++++-------------------- > 8 files changed, 100 insertions(+), 100 deletions(-) Every file you change should be listed in a ChangeLog entry. And please note the format of existing entries (e.g., placement of blank lines). One ChangeLog entry per patch, please. > > diff --git a/daemon/opd_events.c b/daemon/opd_events.c > index 81a87d2..0ecba93 100644 > --- a/daemon/opd_events.c > +++ b/daemon/opd_events.c > @@ -35,7 +35,7 @@ static double cpu_speed; > static void malformed_events(void) > { > fprintf(stderr, "oprofiled: malformed events passed " > - "on the command line\n"); > + "on the command line\n"); > exit(EXIT_FAILURE); > } > > @@ -141,8 +141,8 @@ struct opd_event * find_counter_event(unsigned long counter) > > > void fill_header(struct opd_header * header, unsigned long counter, > - vma_t anon_start, vma_t cg_to_anon_start, > - int is_kernel, int cg_to_is_kernel, > + vma_t anon_start, vma_t cg_to_anon_start, > + int is_kernel, int cg_to_is_kernel, > int spu_samples, uint64_t embed_offset, time_t mtime) Seems like the line above ^^^ should be adjusted, too. > { [snip] The rest looks fine. Thanks for the cleanup, Robert! -Maynard |
From: Maynard J. <may...@us...> - 2008-11-24 16:40:58
|
Maynard Johnson wrote: > Robert Richter wrote: >> Signed-off-by: Robert Richter <rob...@am...> >> --- >> daemon/opd_events.c | 6 +- >> daemon/opd_events.h | 4 +- >> daemon/opd_mangling.c | 2 +- >> daemon/opd_mangling.h | 2 +- >> daemon/opd_sfile.c | 2 +- >> daemon/opd_trans.c | 18 ++-- >> events/x86-64/family10/events | 2 +- >> utils/opcontrol | 164 ++++++++++++++++++++-------------------- >> 8 files changed, 100 insertions(+), 100 deletions(-) > Every file you change should be listed in a ChangeLog entry. And please note the format of existing entries (e.g., placement of blank lines). One ChangeLog entry per patch, please. >> diff --git a/daemon/opd_events.c b/daemon/opd_events.c >> index 81a87d2..0ecba93 100644 >> --- a/daemon/opd_events.c >> +++ b/daemon/opd_events.c >> @@ -35,7 +35,7 @@ static double cpu_speed; >> static void malformed_events(void) >> { >> fprintf(stderr, "oprofiled: malformed events passed " >> - "on the command line\n"); >> + "on the command line\n"); >> exit(EXIT_FAILURE); >> } >> >> @@ -141,8 +141,8 @@ struct opd_event * find_counter_event(unsigned long counter) >> >> >> void fill_header(struct opd_header * header, unsigned long counter, >> - vma_t anon_start, vma_t cg_to_anon_start, >> - int is_kernel, int cg_to_is_kernel, >> + vma_t anon_start, vma_t cg_to_anon_start, >> + int is_kernel, int cg_to_is_kernel, >> int spu_samples, uint64_t embed_offset, time_t mtime) > Seems like the line above ^^^ should be adjusted, too. >> { > [snip] > The rest looks fine. Thanks for the cleanup, Robert! Applied. Sorry for the delay. Thanks again. -Maynard > > -Maynard > > > ------------------------------------------------------------------------- > This SF.Net email is sponsored by the Moblin Your Move Developer's challenge > Build the coolest Linux based applications with Moblin SDK & win great prizes > Grand prize is a trip for two to an Open Source event anywhere in the world > http://moblin-contest.org/redirect.php?banner_id=100&url=/ > _______________________________________________ > oprofile-list mailing list > opr...@li... > https://lists.sourceforge.net/lists/listinfo/oprofile-list |
From: Maynard J. <may...@us...> - 2008-11-14 17:01:31
|
Robert Richter wrote: > Signed-off-by: Robert Richter <rob...@am...> > --- > utils/opcontrol | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/utils/opcontrol b/utils/opcontrol > index 7378928..7cfddbf 100644 > --- a/utils/opcontrol > +++ b/utils/opcontrol > @@ -945,7 +945,7 @@ do_stop() > do_kill_daemon() > { > if test ! -f "$LOCK_FILE"; then > - # no error message, do_kill_deamon imply stop and stop already > + # no error message, do_kill_daemon imply stop and stop already > # output "Daemon not running" > return > fi Looks fine. -Maynard |