Home | History | Annotate | only in /external/oprofile
Up to higher level directory
NameDateSize
.gitignore16-Dec-201419
agents/16-Dec-2014
Android.mk16-Dec-2014767
autogen.sh16-Dec-20141,009
ChangeLog16-Dec-201418.9K
ChangeLog-200116-Dec-201458.2K
ChangeLog-200216-Dec-2014112.1K
ChangeLog-200316-Dec-2014167.3K
ChangeLog-200416-Dec-201430.6K
ChangeLog-200516-Dec-201426.7K
ChangeLog-200616-Dec-20147.7K
ChangeLog-200716-Dec-201424.1K
ChangeLog-200816-Dec-201413.1K
common.mk16-Dec-20141.8K
config.h16-Dec-20142.7K
configure.in16-Dec-20148.5K
COPYING16-Dec-201417.6K
daemon/16-Dec-2014
doc/16-Dec-2014
events/16-Dec-2014
gui/16-Dec-2014
HACKING16-Dec-20146.9K
include/16-Dec-2014
libabi/16-Dec-2014
libdb/16-Dec-2014
libop/16-Dec-2014
libopagent/16-Dec-2014
libopt++/16-Dec-2014
libpopt/16-Dec-2014
libpp/16-Dec-2014
libregex/16-Dec-2014
libutil/16-Dec-2014
libutil++/16-Dec-2014
m4/16-Dec-2014
Makefile.am16-Dec-20142.3K
module/16-Dec-2014
MODULE_LICENSE_GPL16-Dec-20140
NOTICE16-Dec-201417.6K
opcontrol/16-Dec-2014
opev.py16-Dec-20142.5K
opimport_pull16-Dec-20143.8K
opjitconv/16-Dec-2014
oprofile_android16-Dec-201414.5K
popt.h16-Dec-201415.9K
pp/16-Dec-2014
README16-Dec-20141.4K
README_PACKAGERS16-Dec-20143.4K
TODO16-Dec-201415K
utils/16-Dec-2014

README

      1 This is an alpha release version of oprofile, a transparent
      2 low-overhead system-wide profiler.
      3 
      4 You can find some documentation in the doc/ directory.
      5 
      6 Please visit the oprofile website at : http://oprofile.sf.net/
      7 
      8 oprofile was written by John Levon <levon (a] movementarian.org>
      9 and Philippe Elie <phil.el (a] wanadoo.fr>.
     10 
     11 Maynard Johnson <maynardj (a] us.ibm.com> is the current maintainer.
     12 
     13 Dave Jones <davej (a] suse.de> provided bug fixes and support for
     14 the AMD Athlon, and AMD Hammer families of CPUs.
     15 
     16 Bob Montgomery <bobm (a] fc.hp.com> provided bug fixes, the initial RTC
     17 driver and the initial ia64 driver.
     18 
     19 Will Cohen <wcohen (a] redhat.com> integrated the ia64 driver into the
     20 oprofile release, and contributed bug fixes and several cleanups.
     21 
     22 Graydon Hoare <graydon (a] redhat.com> provided P4 port, bug fixes and cleanups.
     23 
     24 Ralf Baechle <ralf (a] linux-mips.org> provided the MIPS port.
     25 
     26 Other contributors are listed in the ChangeLog.
     27 
     28 Building
     29 --------
     30 
     31 Please read the installation instructions in doc/oprofile.html or
     32 http://oprofile.sourceforge.net/doc/install.html.
     33 
     34 Quick start :
     35 
     36 (If using CVS: ./autogen.sh first. You need automake 1.5 or higher. You
     37 can specify a different version, e.g.
     38 ACLOCAL=aclocal-1.5 AUTOMAKE=automake-1.5 AUTOCONF=autoconf-2.13 AUTOHEADER=autoheader-2.13 ./autogen.sh)
     39 
     40 2.4 kernels
     41 
     42 	./configure --with-linux=/path/to/kernel/source
     43 
     44 2.6 kernels
     45 
     46 	./configure --with-kernel-support
     47 

README_PACKAGERS

      1 Building an RPM for OProfile
      2 ==================================
      3 
      4 When building an RPM for OProfile, please follow the RPM packaging guidelines
      5 described in:
      6    http://www.rpm.org/RPM-HOWTO/build.html
      7 
      8 
      9 New file to install as of release 0.9.3
     10 ---------------------------------------
     11 
     12 As of release 0.9.3, opreport is capable of generating XML output.
     13 Tool developers who wish to use the xml output will need to have
     14 access to the doc/opreport.xsd file, which describes the schema.
     15 RPM packagers may install this file in the same package as the other
     16 standard OProfile components or in a separate devel package if desired.
     17 
     18 
     19 New files to install as of release 0.9.4
     20 ---------------------------------------
     21 
     22 As of release 0.9.4, OProfile includes a JIT support library called libopagent.
     23 This library is needed at runtime when profiling JITed code from supported
     24 virtual machines.  The install location for this library is:
     25 	<oprof-install-dir>/<libdir>/oprofile
     26 
     27 And there's a new binary file to install that's used for JIT profiling called
     28 opjitconv.  As with the other oprofile executables, this file is installed in
     29 the <oprof-install-dir>/bin directory.
     30 
     31 OProfile also includes support for profiling Java applications.  This support
     32 must be configured by way of the '--with-java=<path_to_jdk>' configure
     33 option.  If your JDK is older than version 1.5, only a JVMPI agent library
     34 is built.  If your JDK is version 1.5, both JVMPI and JVMTI agent
     35 libraries are built.  If your JDK is 1.6 or newer, only the JVMTI agent
     36 library is built.  As with libopagent described above, the install location
     37 for these is '<libdir>/oprofile'.
     38 
     39 RPM packagers can install the <libdir>/oprofile libraries in the same package
     40 as the other standard OProfile components or in a separate package if desired.
     41 It is recommended to run ldconfig in %post and %postun to add/remove the
     42 <libdir>/oprofile path from the standard library search paths.
     43 
     44 On bi-arch platforms that support more than one "bitness" of userspace software
     45 (e.g., 32-bit and 64-bit programs), it is recommended that the libopagent and
     46 Java agent libraries be packaged in a separate RPM.  You could then build
     47 OProfile twice -- once for each bitness type.  You would then distribute both
     48 versions of the RPMs containing the libraries, but only one RPM containing the
     49 "base" OProfile (i.e., executables, scripts, etc.).
     50 
     51 The new JIT support also provides the ability for third parties to develop
     52 JIT agents for other virtual machines.  The development files provided for this
     53 purpose are:
     54 	doc/op-jit-devel.html
     55 	include/opagent.h
     56 
     57 Again, the RPM packager may package these files in the default package
     58 or in a separate devel package.
     59 
     60 
     61 Requirement for building a binary RPM package
     62 ----------------------------------------
     63 
     64 OProfile requires the special user account "oprofile" to exist for purposes
     65 of processing samples from JIT'ed code (e.g., Java applications).
     66 
     67 When defining the spec file for the OProfile RPM, you should add the automatic
     68 creation of the special "oprofile" user account.  Please refer to the URL
     69 below for an example of how this can be done:
     70    http://fedoraproject.org/wiki/Packaging/UsersAndGroups
     71 
     72 For example, the following commands would add the necessary user account:
     73 
     74    %pre
     75    getent group oprofile >/dev/null || groupadd -r oprofile
     76    getent passwd oprofile >/dev/null || \
     77    useradd -r -g oprofile -d /home/oprofile -s /sbin/nologin \
     78        -c "Special user account to be used by OProfile" oprofile
     79    exit 0
     80