Author: eadler
Date: Sun May  6 14:10:56 2012
New Revision: 235082
URL: http://svn.freebsd.org/changeset/base/235082

Log:
  MFC r234819:
        Allow users of gprof to get per run output files (using the pid)
  
  PR:           bin/99800
  Approved by:  cperciva (implicit)

Modified:
  stable/9/lib/libc/gmon/gmon.c
  stable/9/lib/libc/gmon/moncontrol.3
Directory Properties:
  stable/9/lib/libc/   (props changed)

Modified: stable/9/lib/libc/gmon/gmon.c
==============================================================================
--- stable/9/lib/libc/gmon/gmon.c       Sun May  6 13:09:13 2012        
(r235081)
+++ stable/9/lib/libc/gmon/gmon.c       Sun May  6 14:10:56 2012        
(r235082)
@@ -157,7 +157,12 @@ _mcleanup(void)
        }
 
        moncontrol(0);
-       snprintf(outname, sizeof(outname), "%s.gmon", _getprogname());
+       if (getenv("PROFIL_USE_PID"))
+               snprintf(outname, sizeof(outname), "%s.%d.gmon",
+                   _getprogname(), getpid());
+       else
+               snprintf(outname, sizeof(outname), "%s.gmon", _getprogname());
+
        fd = _open(outname, O_CREAT|O_TRUNC|O_WRONLY, 0666);
        if (fd < 0) {
                _warn("_mcleanup: %s", outname);

Modified: stable/9/lib/libc/gmon/moncontrol.3
==============================================================================
--- stable/9/lib/libc/gmon/moncontrol.3 Sun May  6 13:09:13 2012        
(r235081)
+++ stable/9/lib/libc/gmon/moncontrol.3 Sun May  6 14:10:56 2012        
(r235082)
@@ -98,6 +98,12 @@ however, all functions in that address r
 have their execution time measured.
 Profiling begins on return from
 .Fn monstartup .
+.Sh ENVIRONMENT
+The following environment variables affect the execution of
+.Nm :
+.Bl -tag -width ".Ev PROFIL_USE_PID"
+.It PROFIL_USE_PID
+If set, the pid of the process is inserted into the filename.
 .Sh FILES
 .Bl -tag -width progname.gmon -compact
 .It Pa progname.gmon
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to