History log of /freebsd-10-stable/usr.sbin/pmcstat/pmcstat_log.c
Revision Date Author Comments
# 299826 15-May-2016 pfg

MFC r298881, 298882, 298883, 298885:

Minor spelling fixes in:
tools, share, bluetooth, pmcstat, etc

Many of these have user-visible strings.


# 283905 02-Jun-2015 hiren

MFC: r282866

Fix pmcstat symbol resolution for userland processes.

When examining existing processes pmcstat fails to
correctly determine the locations of executable sections
of the process due to a miscalculated virtual load address.
This does not affect the newly launched processes as the
same value passed as a "start address" to the pmcstat_image_link()
thus nullifying the effect of it. The issue manifests itself
in processes not being reported in the pmcstat(8) output and
"dubious frames" being reported.

Fix it for now by ignoring all the sections except the executable
one. This won't fix the issue for objects with multiple
executable sections but helps in majority of real world usecases.
The real solution would be to modify the MAP-IN event to include
the appropriate load address so pmcstat(8) won't have to manually
parse object files to try to determine it.

PR: 198147, 198148
Submitted by: stas


# 266590 23-May-2014 emaste

MFC r266208: Speed up pmcstat by improving string hash

In one case generating callgraph output from a 24MB system-wide sampling
data file took 17.4 seconds on average. Profiling showed pmcstat
spending a lot of time in strcmp, due to hash collisions.

Replacing the XOR-only hash with FNV-1a reduces the run time for my
test by 40%.


# 265604 07-May-2014 scottl

Merged r262424-262425,265085

Add the -a option to pmcstat. This produces a full stack track on the
sampled points. See the man page for details on how this works.

Obtained from: Netflix, Inc.


# 283905 02-Jun-2015 hiren

MFC: r282866

Fix pmcstat symbol resolution for userland processes.

When examining existing processes pmcstat fails to
correctly determine the locations of executable sections
of the process due to a miscalculated virtual load address.
This does not affect the newly launched processes as the
same value passed as a "start address" to the pmcstat_image_link()
thus nullifying the effect of it. The issue manifests itself
in processes not being reported in the pmcstat(8) output and
"dubious frames" being reported.

Fix it for now by ignoring all the sections except the executable
one. This won't fix the issue for objects with multiple
executable sections but helps in majority of real world usecases.
The real solution would be to modify the MAP-IN event to include
the appropriate load address so pmcstat(8) won't have to manually
parse object files to try to determine it.

PR: 198147, 198148
Submitted by: stas


# 266590 23-May-2014 emaste

MFC r266208: Speed up pmcstat by improving string hash

In one case generating callgraph output from a 24MB system-wide sampling
data file took 17.4 seconds on average. Profiling showed pmcstat
spending a lot of time in strcmp, due to hash collisions.

Replacing the XOR-only hash with FNV-1a reduces the run time for my
test by 40%.


# 265604 07-May-2014 scottl

Merged r262424-262425,265085

Add the -a option to pmcstat. This produces a full stack track on the
sampled points. See the man page for details on how this works.

Obtained from: Netflix, Inc.