public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* profiling cygwin itself
@ 2011-03-06 14:41 jojelino
  0 siblings, 0 replies; only message in thread
From: jojelino @ 2011-03-06 14:41 UTC (permalink / raw)
  To: cygwin

[-- Attachment #1: Type: text/plain, Size: 2580 bytes --]

hi
i'm digging for cygwin to make it profiling itself. and i got some 
result which regards to it.
the attachment could be applied making cygwin profiling itself.
the problem is i don't know whether i'm doing it right way.
hence you can point out which would be other way.

current http://www.cygwin.com/profiling/ document are some kind of old 
stuff.
hence it took some time...

current profiling facility (profthr_func) seems to be missing useful 
call enter/exit information so much. because cygwin does many job during 
10ms ;)

by the way, gcc supports instrument-function, which hooks function 
call/exit. so i gave novice implementation for those hooks.

and this instrument function is visited by several threads, i 
copy-pasted some code which does bound-buffer queue operation. hence any 
enqueue request will be processed in order.

also i have to add some hard-coded ctor function at dll_entry, and alter 
when atexit(_mcleanup) is called.

and finally, added DLL_OFILES:=gcrt1.o gmon.o profil.o mcount.o 
$(DLL_OFILES) above ifneq "${filter -O%,$(CFLAGS)}" ""
in Makefile

and make,

make CFLAGS='-O2 -pg -finstrument-functions -g -Wno-error=uninitialized 
-Wno-error=unused-but-set-variable -Wno-error=unused-function';
s='malloc_wrapper.o kernel32.o boundbuffer.o instrument.o gmon.o 
mcount.o profil.o gcrt1.o';rm $s; make $s CFLAGS='-O2 -g 
-Wno-error=uninitialized -Wno-error=unused-but-set-variable 
-Wno-error=unused-function';make

and testcase follows, compile it without -pg.

#include <stdio.h>
#include <unistd.h>
#include <pthread.h>
#include <semaphore.h>
int main()
{
	sem_t s;
	dassert(sem_init(&s,1,0)>=0);
	pid_t pid=fork();
	if (pid>0)
	{
	printf("spawned %d\n",pid);
	sem_post(&s);
	}
	else if (pid==0)
	{
	sem_wait(&s);
	printf("child\n");
	}
	else
	{
	printf("error\n");
	}
}

finally gmon.????.out has come out, but i think i did something wrong. 
any suggestion would be appreciated.

===================================================
Flat profile:

Each sample counts as 0.01 seconds.
   %   cumulative   self              self     total
  time   seconds   seconds    calls   s/call   s/call  name
  28.78    429.49   429.49        4   107.37   107.37 
_cygtls::init_thread(void*, unsigned long (*)(void*, void*))
  28.78    858.98   429.49        1   429.49   429.49  strace::active() 
const
  28.78   1288.47   429.49 
exception::exception()
  13.65   1492.09   203.62 
pinfo::operator->() const
   0.00   1492.09     0.00      512     0.00     0.00 
mtinfo_part::initialize(long)

=====================================================


[-- Attachment #2: profile-self.diff --]
[-- Type: text/plain, Size: 11807 bytes --]

Index: winsup/cygwin/dcrt0.cc
===================================================================
RCS file: /cvs/src/src/winsup/cygwin/dcrt0.cc,v
retrieving revision 1.392
diff -u -r1.392 dcrt0.cc
--- winsup/cygwin/dcrt0.cc	22 Feb 2011 09:17:57 -0000	1.392
+++ winsup/cygwin/dcrt0.cc	6 Mar 2011 12:55:23 -0000
@@ -691,10 +691,14 @@
   windows_system_directory[windows_system_directory_length++] = L'\\';
   windows_system_directory[windows_system_directory_length] = L'\0';
 }
-
+extern "C" {
+void _monstartup2 (void);
+void _mcleanup (void);
+}
 void __stdcall
 dll_crt0_0 ()
 {
+  _monstartup2();
   init_windows_system_directory ();
   init_global_security ();
   initial_env ();
@@ -720,7 +724,6 @@
   device::init ();
   do_global_ctors (&__CTOR_LIST__, 1);
   cygthread::init ();
-
   child_proc_info = get_cygwin_startup_info ();
   if (!child_proc_info)
     memory_init (true);
@@ -738,6 +741,7 @@
 	    break;
 	}
     }
+  atexit (&_mcleanup);
 
   user_data->threadinterface->Init ();
 
Index: winsup/cygwin/gmon.c
===================================================================
RCS file: /cvs/src/src/winsup/cygwin/gmon.c,v
retrieving revision 1.7
diff -u -r1.7 gmon.c
--- winsup/cygwin/gmon.c	30 Aug 2010 01:57:36 -0000	1.7
+++ winsup/cygwin/gmon.c	6 Mar 2011 12:55:25 -0000
@@ -49,7 +49,7 @@
 
 struct gmonparam _gmonparam = { GMON_PROF_OFF };
 
-static int	s_scale;
+int	s_scale;
 /* see profil(2) where this is describe (incorrectly) */
 #define		SCALE_1_TO_1	0x10000L
 
@@ -60,7 +60,7 @@
 static void *
 fake_sbrk(int size)
 {
-    void *rv = malloc(size);
+    void *rv = LocalAlloc(0,size);
     if (rv)
       return rv;
     else
@@ -204,8 +204,10 @@
 	}
 #else
 	{
-	  char gmon_out[] = "gmon.out";
+	  char gmon_out[100];
+	  sprintf(gmon_out,"gmon.%d.out",(int)GetCurrentThreadId());
 	  proffile = gmon_out;
+
 	}
 #endif
 
Index: winsup/cygwin/init.cc
===================================================================
RCS file: /cvs/src/src/winsup/cygwin/init.cc,v
retrieving revision 1.80
diff -u -r1.80 init.cc
--- winsup/cygwin/init.cc	12 Dec 2010 05:48:29 -0000	1.80
+++ winsup/cygwin/init.cc	6 Mar 2011 12:55:25 -0000
@@ -116,7 +116,9 @@
 dll_entry (HANDLE h, DWORD reason, void *static_load)
 {
   BOOL wow64_test_stack_marker;
-
+  extern void __attribute__ ((no_instrument_function))
+  __cyg_profile_func_ctor();
+  __cyg_profile_func_ctor();
   switch (reason)
     {
     case DLL_PROCESS_ATTACH:
@@ -147,6 +149,9 @@
     case DLL_THREAD_ATTACH:
       if (dll_finished_loading)
 	munge_threadfunc ();
+      void __attribute__ ((no_instrument_function))
+      __cyg_profile_tls_ctor();
+      __cyg_profile_tls_ctor();
       break;
     case DLL_THREAD_DETACH:
       if (dll_finished_loading && (void *) &_my_tls > (void *) &wow64_test_stack_marker
Index: winsup/cygwin/profil.c
===================================================================
RCS file: /cvs/src/src/winsup/cygwin/profil.c,v
retrieving revision 1.8
diff -u -r1.8 profil.c
--- winsup/cygwin/profil.c	30 Aug 2010 01:57:36 -0000	1.8
+++ winsup/cygwin/profil.c	6 Mar 2011 12:55:26 -0000
@@ -17,7 +17,7 @@
 #define SLEEPTIME (1000 / PROF_HZ)
 
 /* global profinfo for profil() call */
-static struct profinfo prof;
+struct profinfo prof;
 
 /* Get the pc for thread THR */
 
@@ -65,6 +65,7 @@
   for (;;)
     {
       pc = (u_long) get_thrpc (p->targthr);
+      if (pc==(u_long)-1) break;
       if (pc >= p->lowpc && pc < p->highpc)
 	{
 	  idx = PROFIDX (pc, p->lowpc, p->scale);
@@ -108,8 +109,8 @@
       errno = ESRCH;
       return -1;
     }
-
-  p->profthr = CreateThread (0, 0, profthr_func, (void *) p, 0, &thrid);
+  boundbuffer_ctor(&prof.queue);
+  p->profthr = CreateThread (0, 0, worker_consumer, (void *) p, 0, &thrid);
   if (!p->profthr)
     {
       CloseHandle (p->targthr);
Index: winsup/cygwin/profil.h
===================================================================
RCS file: /cvs/src/src/winsup/cygwin/profil.h,v
retrieving revision 1.4
diff -u -r1.4 profil.h
--- winsup/cygwin/profil.h	28 Apr 2003 20:10:53 -0000	1.4
+++ winsup/cygwin/profil.h	6 Mar 2011 12:55:26 -0000
@@ -10,7 +10,7 @@
 
 /* profiling frequency.  (No larger than 1000) */
 #define PROF_HZ			100
-
+#include "boundbuffer.h"
 /* convert an addr to an index */
 #define PROFIDX(pc, base, scale)	\
   ({									\
@@ -37,8 +37,16 @@
     u_short *counter;			/* profiling counters */
     u_long lowpc, highpc;		/* range to be profiled */
     u_int scale;			/* scale value of bins */
+    struct boundbuffer queue;
 };
-
+extern struct profinfo prof;
 int profile_ctl(struct profinfo *, char *, size_t, u_long, u_int);
 int profil(char *, size_t, u_long, u_int);
 
+struct clk
+{
+  int use;
+  unsigned idx;
+  void* pc[0x10000];
+  unsigned long long tsc[0x10000];
+};

--- /dev/null	2011-03-06 21:54:49.000000000 +0900
+++ winsup/cygwin/boundbuffer.c	2011-03-06 20:32:31.015625000 +0900
@@ -0,0 +1,60 @@
+#include "winlean.h"
+#include "profil.h"
+void spawn_consumer_thread(){
+if (!prof.queue.spawned)
+  {
+    DWORD id;
+    CreateThread(0,0,worker_consumer,0,0,&id);
+  }
+}
+DWORD __stdcall worker_consumer(void* arg)
+{
+  struct profinfo *p = &prof;
+  message msg;
+  p->queue.spawned=1;
+  while(1)
+    {
+      boundbuffer_dequeue(&p->queue,&msg);
+      unsigned idx = PROFIDX ((unsigned)msg.pv, p->lowpc, p->scale);
+               p->counter[idx]+=msg.ival/100000;
+    }
+  return 0;
+}
+#define buffermethod(x) boundbuffer_##x
+void buffermethod(ctor)(struct boundbuffer* this){
+  this->spawned=0;
+  this->member[FRONT].i=this->member[BACK].i=0;
+this->member[MUTEX].h=CreateSemaphoreA(0, 1, 1, 0);
+this->member[EMPTY].h=CreateSemaphoreA(0, SZBUF, SZBUF, 0);
+this->member[FILL].h=CreateSemaphoreA(0, 0, SZBUF, 0);
+}
+void buffermethod(dtor)(struct boundbuffer* this){
+CloseHandle(this->member[MUTEX].h);
+CloseHandle(this->member[EMPTY].h);
+CloseHandle(this->member[FILL].h);
+}
+static void buffermethod(check)(struct boundbuffer* this){
+  if (!((this->member[FRONT].i>-1) &&(this->member[FRONT].i<SZBUF)))
+    asm volatile("int $3\t\n");
+  if (!((this->member[BACK].i>-1) &&(this->member[BACK].i<SZBUF)))
+      asm volatile("int $3\t\n");
+}
+void buffermethod(enqueue)(struct boundbuffer* this,message obj){
+  WaitForSingleObject(this->member[EMPTY].h, INFINITE);
+  WaitForSingleObject(this->member[MUTEX].h, INFINITE);
+  boundbuffer_check(this);
+  this->buffer[this->member[BACK].i] = obj;
+  this->member[BACK].i = (this->member[BACK].i + 1) % SZBUF;
+  ReleaseSemaphore(this->member[MUTEX].h, 1, 0);
+  ReleaseSemaphore(this->member[FILL].h, 1, 0);
+}
+void buffermethod(dequeue)(struct boundbuffer* this,message* result){
+  WaitForSingleObject(this->member[FILL].h, INFINITE);
+  WaitForSingleObject(this->member[MUTEX].h, INFINITE);
+  boundbuffer_check(this);
+  (*result)=this->buffer[this->member[FRONT].i];
+  this->member[FRONT].i = (this->member[FRONT].i + 1) % SZBUF;
+  ReleaseSemaphore(this->member[MUTEX].h, 1, 0);
+  ReleaseSemaphore(this->member[EMPTY].h, 1, 0);
+}
+#undef buffermethod
--- /dev/null	2011-03-06 21:54:49.000000000 +0900
+++ winsup/cygwin/boundbuffer.h	2011-03-06 20:17:20.796875000 +0900
@@ -0,0 +1,47 @@
+#ifndef BOUNDBUFFER_H_
+#define BOUNDBUFFER_H_
+#include <stdio.h>
+#define assertion(x) if (!(x)) \
+  { \
+  asm volatile ("int $3");\
+  } \
+  else {};
+
+struct message
+  {
+#if 0
+    unsigned long long ldata;
+    unsigned long idata[2];
+#endif
+      void* pv;
+      unsigned ival;
+  };
+typedef struct message message;
+extern DWORD __stdcall worker_consumer(void* arg);
+union avoidtypecheck
+{
+  HANDLE h;
+  int i;
+};
+enum bconst{
+    MUTEX,FILL,EMPTY,FRONT,BACK,SZMEMBER,SZBUF=50
+  };
+struct boundbuffer
+{
+  union avoidtypecheck member[SZMEMBER];
+  message buffer[SZBUF];
+  int spawned;
+  /*
+  void (*ctor)(struct boundbuffer*);
+  void (*dtor)(struct boundbuffer*);
+  void (*enqueue)(struct boundbuffer*,union message*);
+  union message* (*dequeue)(struct boundbuffer*);
+  */
+};
+#define buffermethod(x) boundbuffer_##x
+extern void buffermethod(ctor)(struct boundbuffer*);
+extern void buffermethod(dtor)(struct boundbuffer*);
+extern void buffermethod(enqueue)(struct boundbuffer*,message);
+extern void buffermethod(dequeue)(struct boundbuffer*,message*);
+#undef buffermethod
+#endif /* BOUNDBUFFER_H_ */
--- /dev/null	2011-03-06 21:54:49.000000000 +0900
+++ winsup/cygwin/gcrt1.c	2011-03-01 23:38:39.437500000 +0900
@@ -0,0 +1,39 @@
+/* gcrt0.c
+
+   Copyright 1998, 1999, 2000, 2001 Red Hat, Inc.
+
+This file is part of Cygwin.
+
+This software is a copyrighted work licensed under the terms of the
+Cygwin license.  Please consult the file "CYGWIN_LICENSE" for
+details. */
+
+#include <sys/types.h>
+#include <stdlib.h>
+#include <stdbool.h>
+extern u_char etext asm ("etext");
+extern u_char eprol asm ("__eprol");
+extern void _mcleanup (void);
+extern void monstartup (u_long, u_long);
+
+extern void _monstartup2 (void);
+
+/* startup initialization for -pg support */
+
+void
+_monstartup2 (void)
+{
+  static int called;
+
+  /* Guard against multiple calls that may happen if DLLs are linked
+     with profile option set as well. Addede side benefit is that it
+     makes profiling backward compatible (GCC used to emit a call to
+     _monstartup when compiling main with profiling enabled).  */
+  if (called++)
+    return;
+  monstartup ((u_long) &eprol, (u_long) &etext);
+}
+
+asm (".text");
+asm ("__eprol:");
+
--- /dev/null	2011-03-06 21:54:50.000000000 +0900
+++ winsup/cygwin/instrument.c	2011-03-06 19:33:30.312500000 +0900
@@ -0,0 +1,80 @@
+/*
+ * instrument.c
+ *
+ *  Created on: 2011. 3. 2.
+ *      Author: Administrator
+ */
+#include <stdint.h>
+#include "winlean.h"
+#include "profil.h"
+#include "boundbuffer.h"
+extern struct profinfo prof;
+DWORD tlskey;
+void __attribute__ ((no_instrument_function))
+__cyg_profile_func_ctor()
+{
+  tlskey = TlsAlloc();
+}
+void __attribute__ ((no_instrument_function))
+__cyg_profile_tls_ctor()
+{
+  void * map = (void*) LocalAlloc(0x40, sizeof(struct clk));
+  TlsSetValue(tlskey, map);
+  struct clk* clkinfo = (struct clk*) map;
+  clkinfo->idx = 0;
+  clkinfo->use = 1;
+}
+void __attribute__ ((no_instrument_function))
+__cyg_profile_func_dtor()
+{
+  struct clk* clkinfo = (struct clk*) TlsGetValue(tlskey);
+  clkinfo->use = 0;
+}
+extern int s_scale;
+void __attribute__ ((no_instrument_function))
+__cyg_set_clk(struct clk* clkinfo,void *caller, int state)
+{
+  int idx;
+  message msg;
+  switch (state)
+    {
+  case 0:
+    if (!clkinfo->idx) goto skip;
+    idx = --clkinfo->idx;
+    dassert((idx>=0)&&clkinfo->pc[idx] == caller)
+    clkinfo->tsc[idx] -= __builtin_ia32_rdtsc();
+    msg.pv = clkinfo->pc[idx];
+    msg.ival = (unsigned)clkinfo->tsc[idx] & 0x00000000ffffffffULL;
+    if (prof.queue.spawned)
+      boundbuffer_enqueue(&prof.queue, msg);
+    break;
+  case 1:
+    clkinfo->pc[clkinfo->idx] = caller;
+    clkinfo->tsc[clkinfo->idx] = __builtin_ia32_rdtsc();
+    clkinfo->idx++;
+    break;
+  default:
+    goto skip;
+    break;
+    };
+  skip: do
+    {
+    }
+  while (0);
+}
+void __attribute__ ((no_instrument_function))
+__cyg_profile_func_enter(void* caller, void* site)
+{
+  struct clk* clkinfo = (struct clk*) TlsGetValue(tlskey);
+  if (!clkinfo) return;
+  if (clkinfo->use)
+    __cyg_set_clk(clkinfo,caller, 1);
+}
+void __attribute__ ((no_instrument_function))
+__cyg_profile_func_exit(void* caller, void* site)
+{
+  struct clk* clkinfo = (struct clk*) TlsGetValue(tlskey);
+  if (!clkinfo) return;
+  if (clkinfo->use)
+    __cyg_set_clk(clkinfo,caller, 0);
+}

[-- Attachment #3: cygwin1.dll.result --]
[-- Type: text/plain, Size: 147339 bytes --]

Flat profile:

Each sample counts as 0.01 seconds.
  %   cumulative   self              self     total           
 time   seconds   seconds    calls   s/call   s/call  name    
 28.78    429.49   429.49        4   107.37   107.37  _cygtls::init_thread(void*, unsigned long (*)(void*, void*))
 28.78    858.98   429.49        1   429.49   429.49  strace::active() const
 28.78   1288.47   429.49                             exception::exception()
 13.65   1492.09   203.62                             pinfo::operator->() const
  0.00   1492.09     0.00      512     0.00     0.00  mtinfo_part::initialize(long)
  0.00   1492.09     0.00      281     0.00     0.00  sys_mbstowcs(wchar_t*, unsigned int, char const*, unsigned int)@16
  0.00   1492.09     0.00      281     0.00     0.00  sys_cp_mbstowcs(int (*)(_reent*, wchar_t*, char const*, unsigned int, char const*, _mbstate_t*), char const*, wchar_t*, unsigned int, char const*, unsigned int)@24
  0.00   1492.09     0.00      182     0.00     0.00  pwdgrp::next_str(char)
  0.00   1492.09     0.00      155     0.00     0.00  muto::acquire(unsigned long)
  0.00   1492.09     0.00      155     0.00     0.00  muto::release()
  0.00   1492.09     0.00      136     0.00     0.00  sys_wcstombs(char*, unsigned int, wchar_t const*, unsigned int)@16
  0.00   1492.09     0.00      136     0.00     0.00  sys_cp_wcstombs(int (*)(_reent*, char*, wchar_t, char const*, _mbstate_t*), char const*, char*, unsigned int, wchar_t const*, unsigned int)@24
  0.00   1492.09     0.00      132     0.00     0.00  cygwin_strncasecmp@12
  0.00   1492.09     0.00      128     0.00     0.00  tty::init()
  0.00   1492.09     0.00      105     0.00     0.00  dlmalloc
  0.00   1492.09     0.00       86     0.00     0.00  path_prefix_p(char const*, char const*, int, bool)
  0.00   1492.09     0.00       74     0.00     0.00  dlcalloc
  0.00   1492.09     0.00       72     0.00     0.00  tmp_pathbuf::tmp_pathbuf()
  0.00   1492.09     0.00       72     0.00     0.00  tmp_pathbuf::~tmp_pathbuf()
  0.00   1492.09     0.00       65     0.00     0.00  sys_wcstombs_alloc(char**, int, wchar_t const*, unsigned int)@16
  0.00   1492.09     0.00       64     0.00     0.00  tmp_pathbuf::c_get()
  0.00   1492.09     0.00       59     0.00     0.00  __getreent
  0.00   1492.09     0.00       56     0.00     0.00  getwinenv(char const*, char const*, win_env*)@12
  0.00   1492.09     0.00       49     0.00     0.00  sigproc_terminate(exit_states)@4
  0.00   1492.09     0.00       49     0.00     0.00  pwdgrp::next_num(unsigned long&)
  0.00   1492.09     0.00       46     0.00     0.00  init_cygheap::manage_console_count(char const*, int, bool)
  0.00   1492.09     0.00       44     0.00     0.00  __small_sprintf(char*, char const*, ...)
  0.00   1492.09     0.00       44     0.00     0.00  __small_vsprintf(char*, char const*, char*)
  0.00   1492.09     0.00       36     0.00     0.00  pwdgrp::add_line(char*)
  0.00   1492.09     0.00       33     0.00     0.00  normalize_win32_path(char const*, char*, char*&)
  0.00   1492.09     0.00       32     0.00     0.00  path_conv::~path_conv()
  0.00   1492.09     0.00       30     0.00     0.00  mount_info::conv_to_posix_path(char const*, char*, int)
  0.00   1492.09     0.00       30     0.00     0.00  cygwin_conv_path
  0.00   1492.09     0.00       29     0.00     0.00  slashify(char const*, char*, bool)
  0.00   1492.09     0.00       28     0.00     0.00  mount_info::cygdrive_posix_path(char const*, char*, int)
  0.00   1492.09     0.00       25     0.00     0.00  strccpy@12
  0.00   1492.09     0.00       22     0.00     0.00  getpagesize
  0.00   1492.09     0.00       21     0.00     0.00  pwdgrp::parse_group()
  0.00   1492.09     0.00       21     0.00     0.00  pthread::self()
  0.00   1492.09     0.00       21     0.00     0.00  pthread_self
  0.00   1492.09     0.00       18     0.00     0.00  reg_key::build_reg(HKEY__*, unsigned long, char*)
  0.00   1492.09     0.00       17     0.00     0.00  cur_environ@0
  0.00   1492.09     0.00       15     0.00     0.00  pwdgrp::parse_passwd()
  0.00   1492.09     0.00       15     0.00     0.00  __ntohs
  0.00   1492.09     0.00       15     0.00     0.00  dlmalloc_footprint
  0.00   1492.09     0.00       15     0.00     0.00  dlrealloc
  0.00   1492.09     0.00       13     0.00     0.00  dlfree
  0.00   1492.09     0.00       12     0.00     0.00  cmalloc@8
  0.00   1492.09     0.00       11     0.00     0.00  pthread_mutex::lock()
  0.00   1492.09     0.00       11     0.00     0.00  __cygwin_lock_lock
  0.00   1492.09     0.00       11     0.00     0.00  pthread_mutex_lock
  0.00   1492.09     0.00       10     0.00     0.00  pthread_mutex::unlock()
  0.00   1492.09     0.00       10     0.00     0.00  muto::init(char const*)
  0.00   1492.09     0.00       10     0.00     0.00  __cygwin_lock_unlock
  0.00   1492.09     0.00       10     0.00     0.00  pthread_mutex_unlock
  0.00   1492.09     0.00        9     0.00     0.00  pthread_mutex::pthread_mutex(pthread_mutexattr*)
  0.00   1492.09     0.00        9     0.00     0.00  reg_key::reg_key(HKEY__*, unsigned long, ...)
  0.00   1492.09     0.00        9     0.00     0.00  reg_key::reg_key(bool, unsigned long, ...)
  0.00   1492.09     0.00        9     0.00     0.00  reg_key::~reg_key()
  0.00   1492.09     0.00        9     0.00     0.00  operator new(unsigned int)
  0.00   1492.09     0.00        9     0.00     0.00  __wrap__Znwj
  0.00   1492.09     0.00        8     0.00     0.00  fast_mutex::lock()
  0.00   1492.09     0.00        8     0.00     0.00  fast_mutex::unlock()
  0.00   1492.09     0.00        8     0.00     0.00  mount_info::get_cygdrive_info(char*, char*, char*, char*)
  0.00   1492.09     0.00        8     0.00     0.00  mtinfo_drive::initialize(int, bool)
  0.00   1492.09     0.00        8     0.00     0.00  crealloc_abort@8
  0.00   1492.09     0.00        7     0.00     0.00  cygheap_fdget::cygheap_fdget(int, bool, bool)
  0.00   1492.09     0.00        7     0.00     0.00  pthread_mutex::init(pthread_mutex**, pthread_mutexattr* const*, pthread_mutex*)
  0.00   1492.09     0.00        7     0.00     0.00  cygpsid::string(char*) const
  0.00   1492.09     0.00        7     0.00     0.00  cstrdup@4
  0.00   1492.09     0.00        6     0.00     0.00  get_shared_parent_dir()
  0.00   1492.09     0.00        6     0.00     0.00  mount_info::from_fstab_line(char*, bool)
  0.00   1492.09     0.00        6     0.00     0.00  path_conv::set_normalized_path(char const*)
  0.00   1492.09     0.00        6     0.00     0.00  operator new[](unsigned int)
  0.00   1492.09     0.00        6     0.00     0.00  __cygwin_lock_init_recursive
  0.00   1492.09     0.00        6     0.00     0.00  _cygwin_istext_for_stdio
  0.00   1492.09     0.00        6     0.00     0.00  cfree@4
  0.00   1492.09     0.00        6     0.00     0.00  cygwin_strcasecmp@8
  0.00   1492.09     0.00        6     0.00     0.00  sbrk
  0.00   1492.09     0.00        5     0.00     0.00  open_shared(wchar_t const*, int, void*&, unsigned long, shared_locations*, _SECURITY_ATTRIBUTES*, unsigned long)@28
  0.00   1492.09     0.00        5     0.00     0.00  __small_swprintf(wchar_t*, wchar_t const*, ...)
  0.00   1492.09     0.00        5     0.00     0.00  __small_vswprintf(wchar_t*, wchar_t const*, char*)
  0.00   1492.09     0.00        5     0.00     0.00  tmp_pathbuf::w_get()
  0.00   1492.09     0.00        5     0.00     0.00  cygheap_fdmanip::operator->() const
  0.00   1492.09     0.00        5     0.00     0.00  cmalloc_abort@8
  0.00   1492.09     0.00        4     0.00     0.00  __sec_user(void*, void*, void*, unsigned long, int)@20
  0.00   1492.09     0.00        4     0.00     0.00  shared_name(wchar_t*, wchar_t const*, int)@12
  0.00   1492.09     0.00        4     0.00     0.00  set_privilege(void*, unsigned long, bool)
  0.00   1492.09     0.00        4     0.00     0.00  sec_acl(_ACL*, bool, bool, void*, void*, unsigned long)
  0.00   1492.09     0.00        4     0.00     0.00  fhandler_base::fhandler_base()
  0.00   1492.09     0.00        4     0.00   107.37  _cygtls::call(unsigned long (*)(void*, void*), void*)
  0.00   1492.09     0.00        4     0.00   107.37  _cygtls::call2(unsigned long (*)(void*, void*), void*, void*)
  0.00   1492.09     0.00        4     0.00     0.00  reg_key::get_string(wchar_t const*, wchar_t*, unsigned int, wchar_t const*)
  0.00   1492.09     0.00        4     0.00     0.00  reg_key::get_int(char const*, int)
  0.00   1492.09     0.00        4     0.00     0.00  win_env::add_cache(char const*, char const*)
  0.00   1492.09     0.00        4     0.00     0.00  ccalloc@12
  0.00   1492.09     0.00        4     0.00     0.00  dlvalloc
  0.00   1492.09     0.00        3     0.00     0.00  build_fh_pc(path_conv&, bool)
  0.00   1492.09     0.00        3     0.00     0.00  open_shared(wchar_t const*, int, void*&, unsigned long, shared_locations, _SECURITY_ATTRIBUTES*, unsigned long)@28
  0.00   1492.09     0.00        3     0.00     0.00  build_fh_dev(device const&, char const*)
  0.00   1492.09     0.00        3     0.00     0.00  set_std_handle(int)@4
  0.00   1492.09     0.00        3     0.00     0.00  env_path_to_posix(void const*, void*, unsigned int)
  0.00   1492.09     0.00        3     0.00     0.00  initial_setlocale()
  0.00   1492.09     0.00        3     0.00     0.00  normalize_posix_path(char const*, char*, char*&)
  0.00   1492.09     0.00        3     0.00     0.00  sig_send(_pinfo*, siginfo_t&, _cygtls*)@12
  0.00   1492.09     0.00        3     0.00     0.00  sig_send(_pinfo*, int)@8
  0.00   1492.09     0.00        3     0.00     0.00  to_time_t(_FILETIME*)@4
  0.00   1492.09     0.00        3     0.00     0.00  mount_info::sort()
  0.00   1492.09     0.00        3     0.00     0.00  mount_info::add_item(char const*, char const*, unsigned int)
  0.00   1492.09     0.00        3     0.00     0.00  mount_item::init(char const*, char const*, unsigned int)
  0.00   1492.09     0.00        3     0.00     0.00  cygheap_user::set_name(char const*)
  0.00   1492.09     0.00        3     0.00     0.00  pthread_null::get_null_pthread()
  0.00   1492.09     0.00        3     0.00     0.00  fhandler_base::init(void*, unsigned long, unsigned int)
  0.00   1492.09     0.00        3     0.00     0.00  fhandler_base::set_name(char const*)
  0.00   1492.09     0.00        3     0.00     0.00  fhandler_base::set_name(path_conv&)
  0.00   1492.09     0.00        3     0.00     0.00  fhandler_base::set_flags(int, int)
  0.00   1492.09     0.00        3     0.00     0.00  fhandler_pipe::init(void*, unsigned long, unsigned int)
  0.00   1492.09     0.00        3     0.00     0.00  fhandler_pipe::fhandler_pipe()
  0.00   1492.09     0.00        3     0.00     0.00  fhandler_base_overlapped::destroy_overlapped()
  0.00   1492.09     0.00        3     0.00     0.00  pinfo::init(int, unsigned long, void*)
  0.00   1492.09     0.00        3     0.00     0.00  dtable::select_read(int, select_stuff*)
  0.00   1492.09     0.00        3     0.00     0.00  dtable::init_std_file_from_handle(int, void*)
  0.00   1492.09     0.00        3     0.00     0.00  _getenv_r
  0.00   1492.09     0.00        3     0.00     0.00  cygwin_inet_network
  0.00   1492.09     0.00        3     0.00     0.00  getenv
  0.00   1492.09     0.00        3     0.00     0.00  setenv
  0.00   1492.09     0.00        3     0.00     0.00  time
  0.00   1492.09     0.00        2     0.00     0.00  create_pipe(void**, void**, _SECURITY_ATTRIBUTES*, unsigned long)@16
  0.00   1492.09     0.00        2     0.00     0.00  proc_subproc(unsigned long, unsigned long)@8
  0.00   1492.09     0.00        2     0.00     0.00  hash_path_name(unsigned long long, _UNICODE_STRING*)@12
  0.00   1492.09     0.00        2     0.00     0.00  transform_chars(wchar_t*, wchar_t*)
  0.00   1492.09     0.00        2     0.00     0.00  internal_getgrgid(unsigned long, bool)
  0.00   1492.09     0.00        2     0.00     0.00  internal_getpwsid(cygpsid&)
  0.00   1492.09     0.00        2     0.00     0.00  child_info::sync(int, void*&, unsigned long)
  0.00   1492.09     0.00        2     0.00     0.00  mount_info::from_fstab(bool, wchar_t*, wchar_t*)
  0.00   1492.09     0.00        2     0.00     0.00  pthread_attr::pthread_attr()
  0.00   1492.09     0.00        2     0.00     0.00  fhandler_base::get_output_handle()
  0.00   1492.09     0.00        2     0.00     0.00  pending_signals::next()
  0.00   1492.09     0.00        2     0.00     0.00  pending_signals::reset()
  0.00   1492.09     0.00        2     0.00     0.00  etc::test_file_change(int)
  0.00   1492.09     0.00        2     0.00     0.00  etc::init(int, _OBJECT_ATTRIBUTES*)
  0.00   1492.09     0.00        2     0.00     0.00  pwdgrp::load(wchar_t const*)
  0.00   1492.09     0.00        2     0.00     0.00  _cygtls::call_signal_handler()
  0.00   1492.09     0.00        2     0.00     0.00  pthread::set_tls_self_pointer(pthread*)
  0.00   1492.09     0.00        2     0.00     0.00  pthread::pthread()
  0.00   1492.09     0.00        2     0.00     0.00  cygthread::stub(void*)@4
  0.00   1492.09     0.00        2     0.00     0.00  cygthread::create()
  0.00   1492.09     0.00        2     0.00     0.00  cygthread::callfunc(bool)
  0.00   1492.09     0.00        2     0.00     0.00  cygthread::operator new(unsigned int)
  0.00   1492.09     0.00        2     0.00     0.00  __set_ctype
  0.00   1492.09     0.00        2     0.00     0.00  __set_lc_ctype_from_win
  0.00   1492.09     0.00        2     0.00     0.00  ccalloc_abort@12
  0.00   1492.09     0.00        2     0.00     0.00  cygwin_exit
  0.00   1492.09     0.00        2     0.00     0.00  dll_crt0(per_process *)
  0.00   1492.09     0.00        1     0.00     0.00  RtlInt64ToHexUnicodeString@16
  0.00   1492.09     0.00        1     0.00     0.00  child_copy(void*, bool, ...)
  0.00   1492.09     0.00        1     0.00     0.00  dll_crt0_0()@0
  0.00   1492.09     0.00        1     0.00     0.00  dll_crt0_1(void*)
  0.00   1492.09     0.00        1     0.00     0.00  ld_preload()
  0.00   1492.09     0.00        1     0.00     0.00  pinfo_init(char**, int)@8
  0.00   1492.09     0.00        1     0.00     0.00  uinfo_init()
  0.00   1492.09     0.00        1     0.00     0.00  dtable_init()
  0.00   1492.09     0.00        1     0.00     0.00  events_init()
  0.00   1492.09     0.00        1     0.00     0.00  memory_init(bool)
  0.00   1492.09     0.00        1     0.00     0.00  shared_name(char*, char const*, int)@12
  0.00   1492.09     0.00        1     0.00     0.00  _everyone_sd(void*, unsigned long)
  0.00   1492.09     0.00        1     0.00     0.00  cygheap_init()@0
  0.00   1492.09     0.00        1     0.00     0.00  environ_init(char**, int)
  0.00   1492.09     0.00        1     0.00     0.00  sigproc_init()@0
  0.00   1492.09     0.00        1     0.00     0.00  hash_path_name(unsigned long long, wchar_t const*)@12
  0.00   1492.09     0.00        1     0.00     0.00  update_envptrs()@0
  0.00   1492.09     0.00        1     0.00     0.00  winprio_to_nice(unsigned long)
  0.00   1492.09     0.00        1     0.00     0.00  dll_global_dtors()
  0.00   1492.09     0.00        1     0.00     0.00  set_console_ctty()
  0.00   1492.09     0.00        1     0.00     0.00  internal_getlogin(cygheap_user&)
  0.00   1492.09     0.00        1     0.00     0.00  internal_getpwnam(char const*, bool)
  0.00   1492.09     0.00        1     0.00     0.00  internal_getpwuid(unsigned long, bool)
  0.00   1492.09     0.00        1     0.00     0.00  get_nt_native_path(char const*, _UNICODE_STRING&, bool)
  0.00   1492.09     0.00        1     0.00     0.00  init_global_security()
  0.00   1492.09     0.00        1     0.00     0.00  sig_dispatch_pending(bool)@4
  0.00   1492.09     0.00        1     0.00     0.00  check_sanity_and_sync(per_process*)@4
  0.00   1492.09     0.00        1     0.00     0.00  create_signal_arrived()@0
  0.00   1492.09     0.00        1     0.00     0.00  set_cygwin_privileges(void*)
  0.00   1492.09     0.00        1     0.00     0.00  get_session_parent_dir()
  0.00   1492.09     0.00        1     0.00     0.00  get_cygwin_startup_info()
  0.00   1492.09     0.00        1     0.00     0.00  _pei386_runtime_relocator(per_process*)
  0.00   1492.09     0.00        1     0.00     0.00  getstack(char volatile*)
  0.00   1492.09     0.00        1     0.00     0.00  sigalloc()@0
  0.00   1492.09     0.00        1     0.00     0.00  build_env(char const* const*, wchar_t*&, int&, bool)@16
  0.00   1492.09     0.00        1     0.00     0.00  heap_init()
  0.00   1492.09     0.00        1     0.00     0.00  child_info::child_info(unsigned int, child_info_types, bool)
  0.00   1492.09     0.00        1     0.00     0.00  child_info::~child_info()
  0.00   1492.09     0.00        1     0.00     0.00  mount_info::conv_to_posix_path(wchar_t*, char*, int)
  0.00   1492.09     0.00        1     0.00     0.00  mount_info::init()
  0.00   1492.09     0.00        1     0.00     0.00  MTinterface::fixup_before_fork()
  0.00   1492.09     0.00        1     0.00     0.00  MTinterface::Init()
  0.00   1492.09     0.00        1     0.00     0.00  dev_console::set_default_attr()
  0.00   1492.09     0.00        1     0.00     0.00  dev_console::set_color(void*)
  0.00   1492.09     0.00        1     0.00     0.00  pinfo_basic::pinfo_basic()
  0.00   1492.09     0.00        1     0.00     0.00  shared_info::initialize()
  0.00   1492.09     0.00        1     0.00     0.00  shared_info::heap_slop_size()
  0.00   1492.09     0.00        1     0.00     0.00  shared_info::heap_chunk_size()
  0.00   1492.09     0.00        1     0.00     0.00  shared_info::init_obcaseinsensitive()
  0.00   1492.09     0.00        1     0.00     0.00  cygheap_user::ontherange(homebodies, passwd*)
  0.00   1492.09     0.00        1     0.00     0.00  cygheap_user::init()
  0.00   1492.09     0.00        1     0.00     0.00  pthread_cond::init_mutex()
  0.00   1492.09     0.00        1     0.00     0.00  pthread_null::pthread_null()
  0.00   1492.09     0.00        1     0.00     0.00  fhandler_base::get_handle()
  0.00   1492.09     0.00        1     0.00     0.00  fhandler_base::fstat(__stat64*)@8
  0.00   1492.09     0.00        1     0.00     0.00  pthread_mutex::init_mutex()
  0.00   1492.09     0.00        1     0.00     0.00  timer_tracker::timer_tracker(unsigned long, sigevent const*)
  0.00   1492.09     0.00        1     0.00     0.00  pthread_rwlock::init_mutex()
  0.00   1492.09     0.00        1     0.00     0.00  child_info_fork::child_info_fork()
  0.00   1492.09     0.00        1     0.00     0.00  fhandler_console::get_tty_stuff(int)
  0.00   1492.09     0.00        1     0.00     0.00  fhandler_console::need_invisible()
  0.00   1492.09     0.00        1     0.00     0.00  fhandler_dev_zero::fhandler_dev_zero()
  0.00   1492.09     0.00        1     0.00     0.00  tty::init_session()@0
  0.00   1492.09     0.00        1     0.00     0.00  List<pthread_key>::List()
  0.00   1492.09     0.00        1     0.00     0.00  List<pthread_cond>::List()
  0.00   1492.09     0.00        1     0.00     0.00  List<pthread_mutex>::List()
  0.00   1492.09     0.00        1     0.00     0.00  List<pthread_rwlock>::List()
  0.00   1492.09     0.00        1     0.00     0.00  List<pthread>::List()
  0.00   1492.09     0.00        1     0.00     0.00  List<semaphore>::List()
  0.00   1492.09     0.00        1     0.00     0.00  frok::parent(char volatile*)@8
  0.00   1492.09     0.00        1     0.00     0.00  pinfo::maybe_set_exit_code_from_windows()
  0.00   1492.09     0.00        1     0.00     0.00  pinfo::wait()
  0.00   1492.09     0.00        1     0.00     0.00  pinfo::thisproc(void*)
  0.00   1492.09     0.00        1     0.00     0.00  _pinfo::dup_proc_pipe(void*)
  0.00   1492.09     0.00        1     0.00     0.00  _pinfo::set_ctty(tty_min*, int, fhandler_tty_slave*)
  0.00   1492.09     0.00        1     0.00     0.00  cygsid::getfromstr(char const*, bool)
  0.00   1492.09     0.00        1     0.00     0.00  cygsid::get_sid(unsigned long, unsigned long, unsigned long*, bool)
  0.00   1492.09     0.00        1     0.00     0.00  cygsid::getfromgr(__group32 const*)
  0.00   1492.09     0.00        1     0.00     0.00  device::init()
  0.00   1492.09     0.00        1     0.00     0.00  dtable::stdio_init()
  0.00   1492.09     0.00        1     0.00     0.00  dtable::get_debugger_info()
  0.00   1492.09     0.00        1     0.00     0.00  dtable::extend(int)
  0.00   1492.09     0.00        1     0.00     0.00  mtinfo::initialize()
  0.00   1492.09     0.00        1     0.00     0.00  pwdgrp::read_group()
  0.00   1492.09     0.00        1     0.00     0.00  pwdgrp::read_passwd()
  0.00   1492.09     0.00        1     0.00     0.00  pwdgrp::pwdgrp(passwd*&)
  0.00   1492.09     0.00        1     0.00     0.00  pwdgrp::pwdgrp(__group32*&)
  0.00   1492.09     0.00        1     0.00     0.00  strace::write_childpid(child_info&, unsigned long)
  0.00   1492.09     0.00        1     0.00     0.00  strace::hello()
  0.00   1492.09     0.00        1     0.00     0.00  strace::activate()
  0.00   1492.09     0.00        1     0.00     0.00  _cygtls::init()
  0.00   1492.09     0.00        1     0.00     0.00  pthread::postcreate()
  0.00   1492.09     0.00        1     0.00     0.00  pthread::atforkparent()
  0.00   1492.09     0.00        1     0.00     0.00  pthread::atforkprepare()
  0.00   1492.09     0.00        1     0.00     0.00  pthread::init_mainthread()
  0.00   1492.09     0.00        1     0.00     0.00  pthread::create_cancel_event()
  0.00   1492.09     0.00        1     0.00     0.00  reg_key::set_string(wchar_t*, wchar_t*)
  0.00   1492.09     0.00        1     0.00     0.00  cwdstuff::override_win32_cwd(bool, unsigned long)
  0.00   1492.09     0.00        1     0.00     0.00  cwdstuff::set(path_conv*, char const*)
  0.00   1492.09     0.00        1     0.00     0.00  cwdstuff::init()
  0.00   1492.09     0.00        1     0.00     0.00  dll_list::init()
  0.00   1492.09     0.00        1     0.00     0.00  tty_list::init_session()@0
  0.00   1492.09     0.00        1     0.00     0.00  tty_list::init()
  0.00   1492.09     0.00        1     0.00     0.00  cygthread::init()
  0.00   1492.09     0.00        1     0.00     0.00  lock_ttys::release()
  0.00   1492.09     0.00        1     0.00     0.00  lock_ttys::lock_ttys(unsigned long)
  0.00   1492.09     0.00        1     0.00     0.00  path_conv::get_nt_native_path()
  0.00   1492.09     0.00        1     0.00     0.00  semaphore::init(semaphore**, int, unsigned int)
  0.00   1492.09     0.00        1     0.00     0.00  semaphore::post(semaphore**)
  0.00   1492.09     0.00        1     0.00     0.00  semaphore::_post()
  0.00   1492.09     0.00        1     0.00     0.00  semaphore::semaphore(int, unsigned int)
  0.00   1492.09     0.00        1     0.00     0.00  user_info::initialize()
  0.00   1492.09     0.00        1     0.00     0.00  user_info::create(bool)
  0.00   1492.09     0.00        1     0.00     0.00  cygpsid::string(wchar_t*) const
  0.00   1492.09     0.00        1     0.00     0.00  __set_locale_from_locale_alias
  0.00   1492.09     0.00        1     0.00     0.00  _fstat64_r
  0.00   1492.09     0.00        1     0.00     0.00  cygxdr_vwarnx
  0.00   1492.09     0.00        1     0.00     0.00  env_PATH_to_posix
  0.00   1492.09     0.00        1     0.00     0.00  fegetenv
  0.00   1492.09     0.00        1     0.00     0.00  fesetenv
  0.00   1492.09     0.00        1     0.00     0.00  fnmatch
  0.00   1492.09     0.00        1     0.00     0.00  fork
  0.00   1492.09     0.00        1     0.00     0.00  fstat64
  0.00   1492.09     0.00        1     0.00     0.00  getegid32
  0.00   1492.09     0.00        1     0.00     0.00  geteuid32
  0.00   1492.09     0.00        1     0.00     0.00  internal_setlocale
  0.00   1492.09     0.00        1     0.00     0.00  mq_close
  0.00   1492.09     0.00        1     0.00     0.00  sem_init
  0.00   1492.09     0.00        1     0.00     0.00  sem_post
  0.00   1492.09     0.00        1     0.00     0.00  sysconf
  0.00   1492.09     0.00        1     0.00     0.00  unlinkat

 %         the percentage of the total running time of the
time       program used by this function.

cumulative a running sum of the number of seconds accounted
 seconds   for by this function and those listed above it.

 self      the number of seconds accounted for by this
seconds    function alone.  This is the major sort for this
           listing.

calls      the number of times this function was invoked, if
           this function is profiled, else blank.
 
 self      the average number of milliseconds spent in this
ms/call    function per call, if this function is profiled,
	   else blank.

 total     the average number of milliseconds spent in this
ms/call    function and its descendents per call, if this 
	   function is profiled, else blank.

name       the name of the function.  This is the minor sort
           for this listing. The index shows the location of
	   the function in the gprof listing. If the index is
	   in parenthesis it shows where it would appear in
	   the gprof listing if it were to be printed.
\f
		     Call graph (explanation follows)


granularity: each sample hit covers 4 byte(s) for 0.00% of 1492.09 seconds

index % time    self  children    called     name
              429.49    0.00       4/4           _cygtls::call2(unsigned long (*)(void*, void*), void*, void*) [3]
[1]     28.8  429.49    0.00       4         _cygtls::init_thread(void*, unsigned long (*)(void*, void*)) [1]
                0.00    0.00       2/155         muto::acquire(unsigned long) [18]
                0.00    0.00       2/155         muto::release() [19]
-----------------------------------------------
                0.00  107.37       1/4           _dll_crt0@0 [9]
                0.00  322.12       3/4           threadfunc_fe(void*)@4 [7]
[2]     28.8    0.00  429.49       4         _cygtls::call(unsigned long (*)(void*, void*), void*) [2]
                0.00  429.49       4/4           _cygtls::call2(unsigned long (*)(void*, void*), void*, void*) [3]
-----------------------------------------------
                0.00  429.49       4/4           _cygtls::call(unsigned long (*)(void*, void*), void*) [2]
[3]     28.8    0.00  429.49       4         _cygtls::call2(unsigned long (*)(void*, void*), void*, void*) [3]
              429.49    0.00       4/4           _cygtls::init_thread(void*, unsigned long (*)(void*, void*)) [1]
                0.00    0.00       2/2           cygthread::stub(void*)@4 [153]
                0.00    0.00       1/1           dll_crt0_1(void*) [165]
-----------------------------------------------
              429.49    0.00       1/1           wait_sig(void*)@4 [5]
[4]     28.8  429.49    0.00       1         strace::active() const [4]
-----------------------------------------------
                                                 <spontaneous>
[5]     28.8    0.00  429.49                 wait_sig(void*)@4 [5]
              429.49    0.00       1/1           strace::active() const [4]
                0.00    0.00       2/2           pending_signals::reset() [146]
                0.00    0.00       2/2           pending_signals::next() [145]
-----------------------------------------------
                                                 <spontaneous>
[6]     28.8  429.49    0.00                 exception::exception() [6]
-----------------------------------------------
                                                 <spontaneous>
[7]     21.6    0.00  322.12                 threadfunc_fe(void*)@4 [7]
                0.00  322.12       3/4           _cygtls::call(unsigned long (*)(void*, void*), void*) [2]
-----------------------------------------------
                                                 <spontaneous>
[8]     13.6  203.62    0.00                 pinfo::operator->() const [8]
-----------------------------------------------
                                                 <spontaneous>
[9]      7.2    0.00  107.37                 _dll_crt0@0 [9]
                0.00  107.37       1/4           _cygtls::call(unsigned long (*)(void*, void*), void*) [2]
-----------------------------------------------
[10]     0.0    0.00    0.00       1+2       <cycle 1 as a whole> [10]
                0.00    0.00       2             internal_getgrgid(unsigned long, bool) <cycle 1> [139]
                0.00    0.00       1             pwdgrp::read_group() <cycle 1> [245]
-----------------------------------------------
                0.00    0.00     512/512         mtinfo_drive::initialize(int, bool) [74]
[14]     0.0    0.00    0.00     512         mtinfo_part::initialize(long) [14]
-----------------------------------------------
                0.00    0.00       1/281         CreateMutexA@12 [324]
                0.00    0.00       1/281         mount_info::from_fstab(bool, wchar_t*, wchar_t*) [142]
                0.00    0.00       1/281         get_nt_native_path(char const*, _UNICODE_STRING&, bool) [185]
                0.00    0.00       2/281         __small_vswprintf(wchar_t*, wchar_t const*, char*) [91]
                0.00    0.00      12/281         cygwin_strcasecmp@8 [87]
                0.00    0.00     264/281         cygwin_strncasecmp@12 [22]
[15]     0.0    0.00    0.00     281         sys_mbstowcs(wchar_t*, unsigned int, char const*, unsigned int)@16 [15]
                0.00    0.00     281/281         sys_cp_mbstowcs(int (*)(_reent*, wchar_t*, char const*, unsigned int, char const*, _mbstate_t*), char const*, wchar_t*, unsigned int, char const*, unsigned int)@24 [16]
-----------------------------------------------
                0.00    0.00     281/281         sys_mbstowcs(wchar_t*, unsigned int, char const*, unsigned int)@16 [15]
[16]     0.0    0.00    0.00     281         sys_cp_mbstowcs(int (*)(_reent*, wchar_t*, char const*, unsigned int, char const*, _mbstate_t*), char const*, wchar_t*, unsigned int, char const*, unsigned int)@24 [16]
-----------------------------------------------
                0.00    0.00      49/182         pwdgrp::next_num(unsigned long&) [34]
                0.00    0.00      61/182         pwdgrp::parse_group() [47]
                0.00    0.00      72/182         pwdgrp::parse_passwd() [52]
[17]     0.0    0.00    0.00     182         pwdgrp::next_str(char) [17]
-----------------------------------------------
                0.00    0.00       1/155         dtable::stdio_init() [241]
                0.00    0.00       1/155         frok::parent(char volatile*)@8 [231]
                0.00    0.00       1/155         fork [283]
                0.00    0.00       1/155         internal_getgrgid(unsigned long, bool) <cycle 1> [139]
                0.00    0.00       1/155         internal_getpwsid(cygpsid&) [140]
                0.00    0.00       1/155         cwdstuff::set(path_conv*, char const*) [260]
                0.00    0.00       1/155         proc_subproc(unsigned long, unsigned long)@8 [136]
                0.00    0.00       2/155         _cygtls::init_thread(void*, unsigned long (*)(void*, void*)) [1]
                0.00    0.00       3/155         dtable::init_std_file_from_handle(int, void*) [129]
                0.00    0.00       5/155         free [4843]
                0.00    0.00       6/155         _cfree@4 [3349]
                0.00    0.00      15/155         realloc [5411]
                0.00    0.00      20/155         malloc [5161]
                0.00    0.00      23/155         _cmalloc(unsigned int)@4 [1248]
                0.00    0.00      74/155         calloc [4483]
[18]     0.0    0.00    0.00     155         muto::acquire(unsigned long) [18]
-----------------------------------------------
                0.00    0.00       1/155         dtable::stdio_init() [241]
                0.00    0.00       1/155         frok::parent(char volatile*)@8 [231]
                0.00    0.00       1/155         fork [283]
                0.00    0.00       1/155         internal_getgrgid(unsigned long, bool) <cycle 1> [139]
                0.00    0.00       1/155         internal_getpwsid(cygpsid&) [140]
                0.00    0.00       1/155         cwdstuff::set(path_conv*, char const*) [260]
                0.00    0.00       1/155         _sigfe [3491]
                0.00    0.00       1/155         proc_subproc(unsigned long, unsigned long)@8 [136]
                0.00    0.00       2/155         _cygtls::init_thread(void*, unsigned long (*)(void*, void*)) [1]
                0.00    0.00       3/155         dtable::init_std_file_from_handle(int, void*) [129]
                0.00    0.00       4/155         posify(char**, char const*, char*)@12 [1217]
                0.00    0.00       6/155         _cfree@4 [3349]
                0.00    0.00      15/155         realloc [5411]
                0.00    0.00      20/155         malloc [5161]
                0.00    0.00      23/155         _cmalloc(unsigned int)@4 [1248]
                0.00    0.00      74/155         calloc [4483]
[19]     0.0    0.00    0.00     155         muto::release() [19]
-----------------------------------------------
                0.00    0.00       1/136         mount_info::conv_to_posix_path(wchar_t*, char*, int) [200]
                0.00    0.00       1/136         mount_info::init() [201]
                0.00    0.00       2/136         _cygwin_exit_return [3356]
                0.00    0.00       2/136         cygheap_user::init() [212]
                0.00    0.00     130/136         sys_wcstombs_alloc(char**, int, wchar_t const*, unsigned int)@16 [29]
[20]     0.0    0.00    0.00     136         sys_wcstombs(char*, unsigned int, wchar_t const*, unsigned int)@16 [20]
                0.00    0.00     136/136         sys_cp_wcstombs(int (*)(_reent*, char*, wchar_t, char const*, _mbstate_t*), char const*, char*, unsigned int, wchar_t const*, unsigned int)@24 [21]
-----------------------------------------------
                0.00    0.00     136/136         sys_wcstombs(char*, unsigned int, wchar_t const*, unsigned int)@16 [20]
[21]     0.0    0.00    0.00     136         sys_cp_wcstombs(int (*)(_reent*, char*, wchar_t, char const*, _mbstate_t*), char const*, char*, unsigned int, wchar_t const*, unsigned int)@24 [21]
-----------------------------------------------
                0.00    0.00     132/132         environ_init(char**, int) [175]
[22]     0.0    0.00    0.00     132         cygwin_strncasecmp@12 [22]
                0.00    0.00     264/281         sys_mbstowcs(wchar_t*, unsigned int, char const*, unsigned int)@16 [15]
-----------------------------------------------
                0.00    0.00     128/128         tty_list::init() [264]
[23]     0.0    0.00    0.00     128         tty::init() [23]
-----------------------------------------------
                0.00    0.00      11/105         dlrealloc [55]
                0.00    0.00      20/105         malloc [5161]
                0.00    0.00      74/105         dlcalloc [26]
[24]     0.0    0.00    0.00     105         dlmalloc [24]
                0.00    0.00       6/13          dlfree [56]
-----------------------------------------------
                0.00    0.00      86/86          mount_info::conv_to_posix_path(char const*, char*, int) [41]
[25]     0.0    0.00    0.00      86         path_prefix_p(char const*, char const*, int, bool) [25]
-----------------------------------------------
                0.00    0.00      74/74          calloc [4483]
[26]     0.0    0.00    0.00      74         dlcalloc [26]
                0.00    0.00      74/105         dlmalloc [24]
-----------------------------------------------
                0.00    0.00       1/72          environ_init(char**, int) [175]
                0.00    0.00       1/72          fork [283]
                0.00    0.00       1/72          mount_info::conv_to_posix_path(wchar_t*, char*, int) [200]
                0.00    0.00       1/72          internal_setlocale [287]
                0.00    0.00       1/72          cwdstuff::set(path_conv*, char const*) [260]
                0.00    0.00       1/72          conv_path_list(char const*, char*, unsigned int, int) [1018]
                0.00    0.00       1/72          cygheap_user::ontherange(homebodies, passwd*) [211]
                0.00    0.00       3/72          handle_to_fn(void*, char*) [975]
                0.00    0.00       3/72          mount_info::add_item(char const*, char const*, unsigned int) [116]
                0.00    0.00      29/72          cygwin_conv_path [42]
                0.00    0.00      30/72          mount_info::conv_to_posix_path(char const*, char*, int) [41]
[27]     0.0    0.00    0.00      72         tmp_pathbuf::tmp_pathbuf() [27]
-----------------------------------------------
                0.00    0.00       1/72          environ_init(char**, int) [175]
                0.00    0.00       1/72          fork [283]
                0.00    0.00       1/72          mount_info::conv_to_posix_path(wchar_t*, char*, int) [200]
                0.00    0.00       1/72          internal_setlocale [287]
                0.00    0.00       1/72          cwdstuff::set(path_conv*, char const*) [260]
                0.00    0.00       1/72          conv_path_list(char const*, char*, unsigned int, int) [1018]
                0.00    0.00       1/72          cygheap_user::ontherange(homebodies, passwd*) [211]
                0.00    0.00       3/72          handle_to_fn(void*, char*) [975]
                0.00    0.00       3/72          mount_info::add_item(char const*, char const*, unsigned int) [116]
                0.00    0.00      29/72          cygwin_conv_path [42]
                0.00    0.00      30/72          mount_info::conv_to_posix_path(char const*, char*, int) [41]
[28]     0.0    0.00    0.00      72         tmp_pathbuf::~tmp_pathbuf() [28]
-----------------------------------------------
                0.00    0.00      65/65          environ_init(char**, int) [175]
[29]     0.0    0.00    0.00      65         sys_wcstombs_alloc(char**, int, wchar_t const*, unsigned int)@16 [29]
                0.00    0.00     130/136         sys_wcstombs(char*, unsigned int, wchar_t const*, unsigned int)@16 [20]
-----------------------------------------------
                0.00    0.00       1/64          mount_info::conv_to_posix_path(wchar_t*, char*, int) [200]
                0.00    0.00       1/64          cwdstuff::set(path_conv*, char const*) [260]
                0.00    0.00       3/64          mount_info::add_item(char const*, char const*, unsigned int) [116]
                0.00    0.00      29/64          cygwin_conv_path [42]
                0.00    0.00      30/64          mount_info::conv_to_posix_path(char const*, char*, int) [41]
[30]     0.0    0.00    0.00      64         tmp_pathbuf::c_get() [30]
-----------------------------------------------
                0.00    0.00       1/59          semaphore::post(semaphore**) [270]
                0.00    0.00       2/59          semaphore::init(semaphore**, int, unsigned int) [269]
                0.00    0.00      14/59          pthread_mutex::init(pthread_mutex**, pthread_mutexattr* const*, pthread_mutex*) [77]
                0.00    0.00      20/59          pthread_mutex_unlock [64]
                0.00    0.00      22/59          pthread_mutex_lock [60]
[31]     0.0    0.00    0.00      59         __getreent [31]
-----------------------------------------------
                0.00    0.00      28/56          posify(char**, char const*, char*)@12 [1217]
                0.00    0.00      28/56          environ_init(char**, int) [175]
[32]     0.0    0.00    0.00      56         getwinenv(char const*, char const*, win_env*)@12 [32]
                0.00    0.00       4/17          cur_environ@0 [51]
-----------------------------------------------
                0.00    0.00       4/49          __small_vswprintf(wchar_t*, wchar_t const*, char*) [91]
                0.00    0.00      45/49          __small_vsprintf(char*, char const*, char*) [37]
[33]     0.0    0.00    0.00      49         sigproc_terminate(exit_states)@4 [33]
-----------------------------------------------
                0.00    0.00      20/49          pwdgrp::parse_group() [47]
                0.00    0.00      29/49          pwdgrp::parse_passwd() [52]
[34]     0.0    0.00    0.00      49         pwdgrp::next_num(unsigned long&) [34]
                0.00    0.00      49/182         pwdgrp::next_str(char) [17]
-----------------------------------------------
                0.00    0.00       1/46          cygheap_init()@0 [174]
                0.00    0.00       2/46          ccalloc_abort@12 [159]
                0.00    0.00       3/46          crealloc_abort@8 [75]
                0.00    0.00       4/46          ccalloc@12 [103]
                0.00    0.00       5/46          cmalloc_abort@8 [94]
                0.00    0.00      12/46          cmalloc@8 [57]
                0.00    0.00      19/46          _cmalloc(unsigned int)@4 [1248]
[35]     0.0    0.00    0.00      46         init_cygheap::manage_console_count(char const*, int, bool) [35]
-----------------------------------------------
                0.00    0.00       1/44          shared_name(char*, char const*, int)@12 [172]
                0.00    0.00       1/44          strace::activate() [251]
                0.00    0.00      42/44          cygpsid::string(char*) const [78]
[36]     0.0    0.00    0.00      44         __small_sprintf(char*, char const*, ...) [36]
                0.00    0.00      44/44          __small_vsprintf(char*, char const*, char*) [37]
-----------------------------------------------
                0.00    0.00      44/44          __small_sprintf(char*, char const*, ...) [36]
[37]     0.0    0.00    0.00      44         __small_vsprintf(char*, char const*, char*) [37]
                0.00    0.00      45/49          sigproc_terminate(exit_states)@4 [33]
-----------------------------------------------
                0.00    0.00       1/36          pwdgrp::read_group() <cycle 1> [245]
                0.00    0.00       2/36          pwdgrp::read_passwd() [246]
                0.00    0.00      33/36          pwdgrp::load(wchar_t const*) [149]
[38]     0.0    0.00    0.00      36         pwdgrp::add_line(char*) [38]
                0.00    0.00      21/21          pwdgrp::parse_group() [47]
                0.00    0.00      15/15          pwdgrp::parse_passwd() [52]
-----------------------------------------------
                0.00    0.00       3/33          mount_info::add_item(char const*, char const*, unsigned int) [116]
                0.00    0.00      30/33          mount_info::conv_to_posix_path(char const*, char*, int) [41]
[39]     0.0    0.00    0.00      33         normalize_win32_path(char const*, char*, char*&) [39]
-----------------------------------------------
                0.00    0.00       3/32          build_fh_dev(device const&, char const*) [107]
                0.00    0.00      29/32          cygwin_conv_path [42]
[40]     0.0    0.00    0.00      32         path_conv::~path_conv() [40]
                0.00    0.00       6/6           cfree@4 [86]
-----------------------------------------------
                0.00    0.00       1/30          mount_info::conv_to_posix_path(wchar_t*, char*, int) [200]
                0.00    0.00      29/30          cygwin_conv_path [42]
[41]     0.0    0.00    0.00      30         mount_info::conv_to_posix_path(char const*, char*, int) [41]
                0.00    0.00      86/86          path_prefix_p(char const*, char const*, int, bool) [25]
                0.00    0.00      30/72          tmp_pathbuf::tmp_pathbuf() [27]
                0.00    0.00      30/64          tmp_pathbuf::c_get() [30]
                0.00    0.00      30/33          normalize_win32_path(char const*, char*, char*&) [39]
                0.00    0.00      30/72          tmp_pathbuf::~tmp_pathbuf() [28]
                0.00    0.00      28/28          mount_info::cygdrive_posix_path(char const*, char*, int) [44]
                0.00    0.00       1/29          slashify(char const*, char*, bool) [43]
-----------------------------------------------
                0.00    0.00       1/30          _cygwin_exit_return [3356]
                0.00    0.00       1/30          env_PATH_to_posix [279]
                0.00    0.00       3/30          env_path_to_posix(void const*, void*, unsigned int) [109]
                0.00    0.00      25/30          conv_path_list(char const*, char*, unsigned int, int) [1018]
[42]     0.0    0.00    0.00      30         cygwin_conv_path [42]
                0.00    0.00      29/72          tmp_pathbuf::tmp_pathbuf() [27]
                0.00    0.00      29/32          path_conv::~path_conv() [40]
                0.00    0.00      29/72          tmp_pathbuf::~tmp_pathbuf() [28]
                0.00    0.00      29/64          tmp_pathbuf::c_get() [30]
                0.00    0.00      29/30          mount_info::conv_to_posix_path(char const*, char*, int) [41]
-----------------------------------------------
                0.00    0.00       1/29          mount_info::conv_to_posix_path(char const*, char*, int) [41]
                0.00    0.00      28/29          mount_info::cygdrive_posix_path(char const*, char*, int) [44]
[43]     0.0    0.00    0.00      29         slashify(char const*, char*, bool) [43]
-----------------------------------------------
                0.00    0.00      28/28          mount_info::conv_to_posix_path(char const*, char*, int) [41]
[44]     0.0    0.00    0.00      28         mount_info::cygdrive_posix_path(char const*, char*, int) [44]
                0.00    0.00      28/29          slashify(char const*, char*, bool) [43]
-----------------------------------------------
                0.00    0.00      25/25          conv_path_list(char const*, char*, unsigned int, int) [1018]
[45]     0.0    0.00    0.00      25         strccpy@12 [45]
-----------------------------------------------
                0.00    0.00       1/22          memory_init(bool) [171]
                0.00    0.00       1/22          get_page_size(int) [998]
                0.00    0.00      20/22          _csbrk@4 [3353]
[46]     0.0    0.00    0.00      22         getpagesize [46]
-----------------------------------------------
                0.00    0.00      21/21          pwdgrp::add_line(char*) [38]
[47]     0.0    0.00    0.00      21         pwdgrp::parse_group() [47]
                0.00    0.00      61/182         pwdgrp::next_str(char) [17]
                0.00    0.00      20/49          pwdgrp::next_num(unsigned long&) [34]
-----------------------------------------------
                0.00    0.00      21/21          pthread_self [49]
[48]     0.0    0.00    0.00      21         pthread::self() [48]
                0.00    0.00       1/3           pthread_null::get_null_pthread() [119]
                0.00    0.00       1/2           pthread::set_tls_self_pointer(pthread*) [151]
-----------------------------------------------
                0.00    0.00      10/21          pthread_mutex::unlock() [61]
                0.00    0.00      11/21          pthread_mutex::lock() [58]
[49]     0.0    0.00    0.00      21         pthread_self [49]
                0.00    0.00      21/21          pthread::self() [48]
-----------------------------------------------
                0.00    0.00       9/18          reg_key::reg_key(HKEY__*, unsigned long, ...) [66]
                0.00    0.00       9/18          reg_key::reg_key(bool, unsigned long, ...) [67]
[50]     0.0    0.00    0.00      18         reg_key::build_reg(HKEY__*, unsigned long, char*) [50]
-----------------------------------------------
                0.00    0.00       3/17          _getenv_r [130]
                0.00    0.00       3/17          getenv [132]
                0.00    0.00       4/17          getwinenv(char const*, char const*, win_env*)@12 [32]
                0.00    0.00       7/17          my_findenv(char const*, int*)@8 [923]
[51]     0.0    0.00    0.00      17         cur_environ@0 [51]
-----------------------------------------------
                0.00    0.00      15/15          pwdgrp::add_line(char*) [38]
[52]     0.0    0.00    0.00      15         pwdgrp::parse_passwd() [52]
                0.00    0.00      72/182         pwdgrp::next_str(char) [17]
                0.00    0.00      29/49          pwdgrp::next_num(unsigned long&) [34]
-----------------------------------------------
                0.00    0.00      15/15          do_global_ctors(void (**)(), int)@8 [1051]
[53]     0.0    0.00    0.00      15         __ntohs [53]
-----------------------------------------------
                0.00    0.00      15/15          sys_alloc(malloc_state*, unsigned int) [1300]
[54]     0.0    0.00    0.00      15         dlmalloc_footprint [54]
-----------------------------------------------
                0.00    0.00      15/15          realloc [5411]
[55]     0.0    0.00    0.00      15         dlrealloc [55]
                0.00    0.00      11/105         dlmalloc [24]
                0.00    0.00       4/4           dlvalloc [104]
-----------------------------------------------
                0.00    0.00       2/13          internal_realloc(malloc_state*, void*, unsigned int) [1079]
                0.00    0.00       5/13          free [4843]
                0.00    0.00       6/13          dlmalloc [24]
[56]     0.0    0.00    0.00      13         dlfree [56]
-----------------------------------------------
                0.00    0.00       5/12          crealloc_abort@8 [75]
                0.00    0.00       7/12          cstrdup@4 [79]
[57]     0.0    0.00    0.00      12         cmalloc@8 [57]
                0.00    0.00      12/46          init_cygheap::manage_console_count(char const*, int, bool) [35]
-----------------------------------------------
                0.00    0.00      11/11          pthread_mutex_lock [60]
[58]     0.0    0.00    0.00      11         pthread_mutex::lock() [58]
                0.00    0.00      11/21          pthread_self [49]
-----------------------------------------------
                0.00    0.00       1/11          _vfprintf_r [4357]
                0.00    0.00       1/11          __sfp_lock_acquire [3282]
                0.00    0.00       1/11          __call_exitprocs [3098]
                0.00    0.00       2/11          __sinit_lock_acquire [3289]
                0.00    0.00       3/11          __fp_lock [3138]
                0.00    0.00       3/11          __register_exitproc [3251]
[59]     0.0    0.00    0.00      11         __cygwin_lock_lock [59]
                0.00    0.00      11/11          pthread_mutex_lock [60]
-----------------------------------------------
                0.00    0.00      11/11          __cygwin_lock_lock [59]
[60]     0.0    0.00    0.00      11         pthread_mutex_lock [60]
                0.00    0.00      22/59          __getreent [31]
                0.00    0.00      11/11          pthread_mutex::lock() [58]
                0.00    0.00       7/7           pthread_mutex::init(pthread_mutex**, pthread_mutexattr* const*, pthread_mutex*) [77]
-----------------------------------------------
                0.00    0.00      10/10          pthread_mutex_unlock [64]
[61]     0.0    0.00    0.00      10         pthread_mutex::unlock() [61]
                0.00    0.00      10/21          pthread_self [49]
-----------------------------------------------
                0.00    0.00       1/10          cygheap_init()@0 [174]
                0.00    0.00       1/10          _cygtls::init() [252]
                0.00    0.00       1/10          dll_crt0_0()@0 [164]
                0.00    0.00       1/10          events_init() [170]
                0.00    0.00       1/10          pwdgrp::pwdgrp(__group32*&) [248]
                0.00    0.00       1/10          pwdgrp::pwdgrp(passwd*&) [247]
                0.00    0.00       1/10          malloc_init() [751]
                0.00    0.00       1/10          __static_initialization_and_destruction_0(int, int) [857]
                0.00    0.00       1/10          cwdstuff::init() [261]
                0.00    0.00       1/10          sigproc_init()@0 [176]
[62]     0.0    0.00    0.00      10         muto::init(char const*) [62]
-----------------------------------------------
                0.00    0.00       1/10          _vfprintf_r [4357]
                0.00    0.00       1/10          __sfp_lock_release [3283]
                0.00    0.00       2/10          __sinit_lock_release [3290]
                0.00    0.00       3/10          __fp_unlock [3140]
                0.00    0.00       3/10          __register_exitproc [3251]
[63]     0.0    0.00    0.00      10         __cygwin_lock_unlock [63]
                0.00    0.00      10/10          pthread_mutex_unlock [64]
-----------------------------------------------
                0.00    0.00      10/10          __cygwin_lock_unlock [63]
[64]     0.0    0.00    0.00      10         pthread_mutex_unlock [64]
                0.00    0.00      20/59          __getreent [31]
                0.00    0.00      10/10          pthread_mutex::unlock() [61]
-----------------------------------------------
                0.00    0.00       2/9           pthread::pthread() [152]
                0.00    0.00       7/9           pthread_mutex::init(pthread_mutex**, pthread_mutexattr* const*, pthread_mutex*) [77]
[65]     0.0    0.00    0.00       9         pthread_mutex::pthread_mutex(pthread_mutexattr*) [65]
-----------------------------------------------
                0.00    0.00       9/9           reg_key::reg_key(bool, unsigned long, ...) [67]
[66]     0.0    0.00    0.00       9         reg_key::reg_key(HKEY__*, unsigned long, ...) [66]
                0.00    0.00       9/18          reg_key::build_reg(HKEY__*, unsigned long, char*) [50]
-----------------------------------------------
                0.00    0.00       1/9           memory_init(bool) [171]
                0.00    0.00       2/9           shared_info::heap_chunk_size() [209]
                0.00    0.00       2/9           shared_info::heap_slop_size() [208]
                0.00    0.00       4/9           regopt(wchar_t const*, char*)@8 [1220]
[67]     0.0    0.00    0.00       9         reg_key::reg_key(bool, unsigned long, ...) [67]
                0.00    0.00       9/9           reg_key::reg_key(HKEY__*, unsigned long, ...) [66]
                0.00    0.00       9/18          reg_key::build_reg(HKEY__*, unsigned long, char*) [50]
                0.00    0.00       4/7           cygpsid::string(char*) const [78]
-----------------------------------------------
                0.00    0.00       1/9           memory_init(bool) [171]
                0.00    0.00       2/9           shared_info::heap_chunk_size() [209]
                0.00    0.00       2/9           shared_info::heap_slop_size() [208]
                0.00    0.00       4/9           regopt(wchar_t const*, char*)@8 [1220]
[68]     0.0    0.00    0.00       9         reg_key::~reg_key() [68]
-----------------------------------------------
                0.00    0.00       9/9           __wrap__Znwj [70]
[69]     0.0    0.00    0.00       9         operator new(unsigned int) [69]
-----------------------------------------------
                0.00    0.00       1/9           pthread::init_mainthread() [256]
                0.00    0.00       1/9           semaphore::init(semaphore**, int, unsigned int) [269]
                0.00    0.00       7/9           pthread_mutex::init(pthread_mutex**, pthread_mutexattr* const*, pthread_mutex*) [77]
[70]     0.0    0.00    0.00       9         __wrap__Znwj [70]
                0.00    0.00       9/9           operator new(unsigned int) [69]
-----------------------------------------------
                0.00    0.00       1/8           MTinterface::fixup_before_fork() [202]
                0.00    0.00       7/8           pthread_mutex::init(pthread_mutex**, pthread_mutexattr* const*, pthread_mutex*) [77]
[71]     0.0    0.00    0.00       8         fast_mutex::lock() [71]
-----------------------------------------------
                0.00    0.00       1/8           MTinterface::fixup_before_fork() [202]
                0.00    0.00       7/8           pthread_mutex::init(pthread_mutex**, pthread_mutexattr* const*, pthread_mutex*) [77]
[72]     0.0    0.00    0.00       8         fast_mutex::unlock() [72]
-----------------------------------------------
                0.00    0.00       8/8           qsort [5396]
[73]     0.0    0.00    0.00       8         mount_info::get_cygdrive_info(char*, char*, char*, char*) [73]
-----------------------------------------------
                0.00    0.00       8/8           mtinfo::initialize() [244]
[74]     0.0    0.00    0.00       8         mtinfo_drive::initialize(int, bool) [74]
                0.00    0.00     512/512         mtinfo_part::initialize(long) [14]
-----------------------------------------------
                0.00    0.00       2/8           cwdstuff::set(path_conv*, char const*) [260]
                0.00    0.00       6/8           path_conv::set_normalized_path(char const*) [82]
[75]     0.0    0.00    0.00       8         crealloc_abort@8 [75]
                0.00    0.00       5/12          cmalloc@8 [57]
                0.00    0.00       3/46          init_cygheap::manage_console_count(char const*, int, bool) [35]
-----------------------------------------------
                0.00    0.00       1/7           fstat64 [284]
                0.00    0.00       6/7           _cygwin_istext_for_stdio [85]
[76]     0.0    0.00    0.00       7         cygheap_fdget::cygheap_fdget(int, bool, bool) [76]
-----------------------------------------------
                0.00    0.00       7/7           pthread_mutex_lock [60]
[77]     0.0    0.00    0.00       7         pthread_mutex::init(pthread_mutex**, pthread_mutexattr* const*, pthread_mutex*) [77]
                0.00    0.00      14/59          __getreent [31]
                0.00    0.00       7/8           fast_mutex::lock() [71]
                0.00    0.00       7/8           fast_mutex::unlock() [72]
                0.00    0.00       7/9           __wrap__Znwj [70]
                0.00    0.00       7/9           pthread_mutex::pthread_mutex(pthread_mutexattr*) [65]
-----------------------------------------------
                0.00    0.00       1/7           pwdgrp::read_passwd() [246]
                0.00    0.00       2/7           internal_getpwsid(cygpsid&) [140]
                0.00    0.00       4/7           reg_key::reg_key(bool, unsigned long, ...) [67]
[78]     0.0    0.00    0.00       7         cygpsid::string(char*) const [78]
                0.00    0.00      42/44          __small_sprintf(char*, char const*, ...) [36]
-----------------------------------------------
                0.00    0.00       1/7           cygheap_user::set_name(char const*) [118]
                0.00    0.00       6/7           fhandler_base::set_name(path_conv&) [122]
[79]     0.0    0.00    0.00       7         cstrdup@4 [79]
                0.00    0.00       7/12          cmalloc@8 [57]
-----------------------------------------------
                0.00    0.00       1/6           CreateMutexW@12 [325]
                0.00    0.00       1/6           get_session_parent_dir() [191]
                0.00    0.00       4/6           CreateFileMappingW@24 [322]
[80]     0.0    0.00    0.00       6         get_shared_parent_dir() [80]
                0.00    0.00       1/5           __small_swprintf(wchar_t*, wchar_t const*, ...) [90]
                0.00    0.00       1/1           _everyone_sd(void*, unsigned long) [173]
-----------------------------------------------
                0.00    0.00       6/6           mount_info::from_fstab(bool, wchar_t*, wchar_t*) [142]
[81]     0.0    0.00    0.00       6         mount_info::from_fstab_line(char*, bool) [81]
-----------------------------------------------
                0.00    0.00       3/6           build_fh_dev(device const&, char const*) [107]
                0.00    0.00       3/6           fhandler_base::set_name(char const*) [121]
[82]     0.0    0.00    0.00       6         path_conv::set_normalized_path(char const*) [82]
                0.00    0.00       6/8           crealloc_abort@8 [75]
-----------------------------------------------
                0.00    0.00       6/6           cfree@4 [86]
[83]     0.0    0.00    0.00       6         operator new[](unsigned int) [83]
-----------------------------------------------
                0.00    0.00       6/6           __fp_lock [3138]
[84]     0.0    0.00    0.00       6         __cygwin_lock_init_recursive [84]
-----------------------------------------------
                0.00    0.00       6/6           __fp_lock [3138]
[85]     0.0    0.00    0.00       6         _cygwin_istext_for_stdio [85]
                0.00    0.00       6/7           cygheap_fdget::cygheap_fdget(int, bool, bool) [76]
                0.00    0.00       3/5           cygheap_fdmanip::operator->() const [93]
-----------------------------------------------
                0.00    0.00       6/6           path_conv::~path_conv() [40]
[86]     0.0    0.00    0.00       6         cfree@4 [86]
                0.00    0.00       6/6           operator new[](unsigned int) [83]
-----------------------------------------------
                0.00    0.00       6/6           internal_getpwnam(char const*, bool) [183]
[87]     0.0    0.00    0.00       6         cygwin_strcasecmp@8 [87]
                0.00    0.00      12/281         sys_mbstowcs(wchar_t*, unsigned int, char const*, unsigned int)@16 [15]
-----------------------------------------------
                0.00    0.00       6/6           sys_alloc(malloc_state*, unsigned int) [1300]
[88]     0.0    0.00    0.00       6         sbrk [88]
-----------------------------------------------
                0.00    0.00       2/5           pinfo::init(int, unsigned long, void*) [127]
                0.00    0.00       3/5           open_shared(wchar_t const*, int, void*&, unsigned long, shared_locations, _SECURITY_ATTRIBUTES*, unsigned long)@28 [106]
[89]     0.0    0.00    0.00       5         open_shared(wchar_t const*, int, void*&, unsigned long, shared_locations*, _SECURITY_ATTRIBUTES*, unsigned long)@28 [89]
                0.00    0.00       4/4           shared_name(wchar_t*, wchar_t const*, int)@12 [96]
-----------------------------------------------
                0.00    0.00       1/5           get_shared_parent_dir() [80]
                0.00    0.00       4/5           shared_name(wchar_t*, wchar_t const*, int)@12 [96]
[90]     0.0    0.00    0.00       5         __small_swprintf(wchar_t*, wchar_t const*, ...) [90]
                0.00    0.00       5/5           __small_vswprintf(wchar_t*, wchar_t const*, char*) [91]
-----------------------------------------------
                0.00    0.00       5/5           __small_swprintf(wchar_t*, wchar_t const*, ...) [90]
[91]     0.0    0.00    0.00       5         __small_vswprintf(wchar_t*, wchar_t const*, char*) [91]
                0.00    0.00       4/49          sigproc_terminate(exit_states)@4 [33]
                0.00    0.00       2/281         sys_mbstowcs(wchar_t*, unsigned int, char const*, unsigned int)@16 [15]
-----------------------------------------------
                0.00    0.00       1/5           environ_init(char**, int) [175]
                0.00    0.00       1/5           conv_path_list(char const*, char*, unsigned int, int) [1018]
                0.00    0.00       3/5           handle_to_fn(void*, char*) [975]
[92]     0.0    0.00    0.00       5         tmp_pathbuf::w_get() [92]
-----------------------------------------------
                0.00    0.00       2/5           fstat64 [284]
                0.00    0.00       3/5           _cygwin_istext_for_stdio [85]
[93]     0.0    0.00    0.00       5         cygheap_fdmanip::operator->() const [93]
-----------------------------------------------
                0.00    0.00       1/5           getearly(char const*, int*)@8 [1260]
                0.00    0.00       1/5           path_conv::get_nt_native_path() [268]
                0.00    0.00       3/5           build_fh_dev(device const&, char const*) [107]
[94]     0.0    0.00    0.00       5         cmalloc_abort@8 [94]
                0.00    0.00       5/46          init_cygheap::manage_console_count(char const*, int, bool) [35]
-----------------------------------------------
                0.00    0.00       1/4           sigproc_init()@0 [176]
                0.00    0.00       1/4           cygheap_user::init() [212]
                0.00    0.00       2/4           pinfo::init(int, unsigned long, void*) [127]
[95]     0.0    0.00    0.00       4         __sec_user(void*, void*, void*, unsigned long, int)@20 [95]
                0.00    0.00       4/4           sec_acl(_ACL*, bool, bool, void*, void*, unsigned long) [98]
-----------------------------------------------
                0.00    0.00       4/4           open_shared(wchar_t const*, int, void*&, unsigned long, shared_locations*, _SECURITY_ATTRIBUTES*, unsigned long)@28 [89]
[96]     0.0    0.00    0.00       4         shared_name(wchar_t*, wchar_t const*, int)@12 [96]
                0.00    0.00       4/5           __small_swprintf(wchar_t*, wchar_t const*, ...) [90]
-----------------------------------------------
                0.00    0.00       4/4           set_cygwin_privileges(void*) [190]
[97]     0.0    0.00    0.00       4         set_privilege(void*, unsigned long, bool) [97]
-----------------------------------------------
                0.00    0.00       4/4           __sec_user(void*, void*, void*, unsigned long, int)@20 [95]
[98]     0.0    0.00    0.00       4         sec_acl(_ACL*, bool, bool, void*, void*, unsigned long) [98]
-----------------------------------------------
                0.00    0.00       1/4           fhandler_dev_zero::fhandler_dev_zero() [223]
                0.00    0.00       3/4           fhandler_pipe::fhandler_pipe() [125]
[99]     0.0    0.00    0.00       4         fhandler_base::fhandler_base() [99]
-----------------------------------------------
                0.00    0.00       4/4           regopt(wchar_t const*, char*)@8 [1220]
[100]    0.0    0.00    0.00       4         reg_key::get_string(wchar_t const*, wchar_t*, unsigned int, wchar_t const*) [100]
-----------------------------------------------
                0.00    0.00       2/4           shared_info::heap_chunk_size() [209]
                0.00    0.00       2/4           shared_info::heap_slop_size() [208]
[101]    0.0    0.00    0.00       4         reg_key::get_int(char const*, int) [101]
-----------------------------------------------
                0.00    0.00       4/4           posify(char**, char const*, char*)@12 [1217]
[102]    0.0    0.00    0.00       4         win_env::add_cache(char const*, char const*) [102]
-----------------------------------------------
                0.00    0.00       1/4           dtable::extend(int) [243]
                0.00    0.00       3/4           build_fh_pc(path_conv&, bool) [105]
[103]    0.0    0.00    0.00       4         ccalloc@12 [103]
                0.00    0.00       4/46          init_cygheap::manage_console_count(char const*, int, bool) [35]
-----------------------------------------------
                0.00    0.00       4/4           dlrealloc [55]
[104]    0.0    0.00    0.00       4         dlvalloc [104]
-----------------------------------------------
                0.00    0.00       3/3           build_fh_dev(device const&, char const*) [107]
[105]    0.0    0.00    0.00       3         build_fh_pc(path_conv&, bool) [105]
                0.00    0.00       3/3           fhandler_base::set_name(path_conv&) [122]
                0.00    0.00       3/4           ccalloc@12 [103]
                0.00    0.00       3/3           fhandler_pipe::fhandler_pipe() [125]
-----------------------------------------------
                0.00    0.00       1/3           fhandler_console::get_tty_stuff(int) [221]
                0.00    0.00       1/3           user_info::create(bool) [274]
                0.00    0.00       1/3           memory_init(bool) [171]
[106]    0.0    0.00    0.00       3         open_shared(wchar_t const*, int, void*&, unsigned long, shared_locations, _SECURITY_ATTRIBUTES*, unsigned long)@28 [106]
                0.00    0.00       3/5           open_shared(wchar_t const*, int, void*&, unsigned long, shared_locations*, _SECURITY_ATTRIBUTES*, unsigned long)@28 [89]
-----------------------------------------------
                0.00    0.00       3/3           dtable::init_std_file_from_handle(int, void*) [129]
[107]    0.0    0.00    0.00       3         build_fh_dev(device const&, char const*) [107]
                0.00    0.00       3/5           cmalloc_abort@8 [94]
                0.00    0.00       3/3           build_fh_pc(path_conv&, bool) [105]
                0.00    0.00       3/32          path_conv::~path_conv() [40]
                0.00    0.00       3/6           path_conv::set_normalized_path(char const*) [82]
-----------------------------------------------
                0.00    0.00       3/3           dtable::init_std_file_from_handle(int, void*) [129]
[108]    0.0    0.00    0.00       3         set_std_handle(int)@4 [108]
                0.00    0.00       2/2           fhandler_base::get_output_handle() [144]
                0.00    0.00       1/1           fhandler_base::get_handle() [215]
-----------------------------------------------
                0.00    0.00       3/3           posify(char**, char const*, char*)@12 [1217]
[109]    0.0    0.00    0.00       3         env_path_to_posix(void const*, void*, unsigned int) [109]
                0.00    0.00       3/30          cygwin_conv_path [42]
-----------------------------------------------
                0.00    0.00       1/3           _cygwin_exit_return [3356]
                0.00    0.00       2/3           __set_lc_ctype_from_win [158]
[110]    0.0    0.00    0.00       3         initial_setlocale() [110]
                0.00    0.00       1/1           __set_locale_from_locale_alias [276]
                0.00    0.00       1/1           internal_setlocale [287]
-----------------------------------------------
                0.00    0.00       3/3           mount_info::add_item(char const*, char const*, unsigned int) [116]
[111]    0.0    0.00    0.00       3         normalize_posix_path(char const*, char*, char*&) [111]
-----------------------------------------------
                0.00    0.00       3/3           sig_send(_pinfo*, int)@8 [113]
[112]    0.0    0.00    0.00       3         sig_send(_pinfo*, siginfo_t&, _cygtls*)@12 [112]
                0.00    0.00       2/2           _cygtls::call_signal_handler() [150]
-----------------------------------------------
                0.00    0.00       1/3           sig_dispatch_pending(bool)@4 [187]
                0.00    0.00       2/3           fork [283]
[113]    0.0    0.00    0.00       3         sig_send(_pinfo*, int)@8 [113]
                0.00    0.00       3/3           sig_send(_pinfo*, siginfo_t&, _cygtls*)@12 [112]
-----------------------------------------------
                0.00    0.00       3/3           time [134]
[114]    0.0    0.00    0.00       3         to_time_t(_FILETIME*)@4 [114]
-----------------------------------------------
                0.00    0.00       3/3           mount_info::add_item(char const*, char const*, unsigned int) [116]
[115]    0.0    0.00    0.00       3         mount_info::sort() [115]
-----------------------------------------------
                0.00    0.00       3/3           mount_info::init() [201]
[116]    0.0    0.00    0.00       3         mount_info::add_item(char const*, char const*, unsigned int) [116]
                0.00    0.00       3/72          tmp_pathbuf::tmp_pathbuf() [27]
                0.00    0.00       3/64          tmp_pathbuf::c_get() [30]
                0.00    0.00       3/3           normalize_posix_path(char const*, char*, char*&) [111]
                0.00    0.00       3/3           mount_item::init(char const*, char const*, unsigned int) [117]
                0.00    0.00       3/3           mount_info::sort() [115]
                0.00    0.00       3/72          tmp_pathbuf::~tmp_pathbuf() [28]
                0.00    0.00       3/33          normalize_win32_path(char const*, char*, char*&) [39]
-----------------------------------------------
                0.00    0.00       3/3           mount_info::add_item(char const*, char const*, unsigned int) [116]
[117]    0.0    0.00    0.00       3         mount_item::init(char const*, char const*, unsigned int) [117]
-----------------------------------------------
                0.00    0.00       1/3           user_info::initialize() [273]
                0.00    0.00       1/3           cygheap_user::init() [212]
                0.00    0.00       1/3           internal_getlogin(cygheap_user&) [182]
[118]    0.0    0.00    0.00       3         cygheap_user::set_name(char const*) [118]
                0.00    0.00       1/7           cstrdup@4 [79]
-----------------------------------------------
                0.00    0.00       1/3           pthread::self() [48]
                0.00    0.00       2/3           pthread::pthread() [152]
[119]    0.0    0.00    0.00       3         pthread_null::get_null_pthread() [119]
-----------------------------------------------
                0.00    0.00       3/3           fhandler_pipe::init(void*, unsigned long, unsigned int) [124]
[120]    0.0    0.00    0.00       3         fhandler_base::init(void*, unsigned long, unsigned int) [120]
                0.00    0.00       3/3           fhandler_base::set_flags(int, int) [123]
-----------------------------------------------
                0.00    0.00       3/3           fhandler_pipe::init(void*, unsigned long, unsigned int) [124]
[121]    0.0    0.00    0.00       3         fhandler_base::set_name(char const*) [121]
                0.00    0.00       3/6           path_conv::set_normalized_path(char const*) [82]
-----------------------------------------------
                0.00    0.00       3/3           build_fh_pc(path_conv&, bool) [105]
[122]    0.0    0.00    0.00       3         fhandler_base::set_name(path_conv&) [122]
                0.00    0.00       6/7           cstrdup@4 [79]
-----------------------------------------------
                0.00    0.00       3/3           fhandler_base::init(void*, unsigned long, unsigned int) [120]
[123]    0.0    0.00    0.00       3         fhandler_base::set_flags(int, int) [123]
-----------------------------------------------
                0.00    0.00       3/3           dtable::init_std_file_from_handle(int, void*) [129]
[124]    0.0    0.00    0.00       3         fhandler_pipe::init(void*, unsigned long, unsigned int) [124]
                0.00    0.00       3/3           fhandler_base::set_name(char const*) [121]
                0.00    0.00       3/3           fhandler_base::init(void*, unsigned long, unsigned int) [120]
                0.00    0.00       3/3           fhandler_base_overlapped::destroy_overlapped() [126]
-----------------------------------------------
                0.00    0.00       3/3           build_fh_pc(path_conv&, bool) [105]
[125]    0.0    0.00    0.00       3         fhandler_pipe::fhandler_pipe() [125]
                0.00    0.00       3/4           fhandler_base::fhandler_base() [99]
-----------------------------------------------
                0.00    0.00       3/3           fhandler_pipe::init(void*, unsigned long, unsigned int) [124]
[126]    0.0    0.00    0.00       3         fhandler_base_overlapped::destroy_overlapped() [126]
-----------------------------------------------
                0.00    0.00       1/3           frok::parent(char volatile*)@8 [231]
                0.00    0.00       1/3           pinfo::thisproc(void*) [234]
                0.00    0.00       1/3           _pinfo::set_ctty(tty_min*, int, fhandler_tty_slave*) [236]
[127]    0.0    0.00    0.00       3         pinfo::init(int, unsigned long, void*) [127]
                0.00    0.00       2/4           __sec_user(void*, void*, void*, unsigned long, int)@20 [95]
                0.00    0.00       2/5           open_shared(wchar_t const*, int, void*&, unsigned long, shared_locations*, _SECURITY_ATTRIBUTES*, unsigned long)@28 [89]
-----------------------------------------------
                0.00    0.00       3/3           dtable::init_std_file_from_handle(int, void*) [129]
[128]    0.0    0.00    0.00       3         dtable::select_read(int, select_stuff*) [128]
-----------------------------------------------
                0.00    0.00       3/3           dtable::stdio_init() [241]
[129]    0.0    0.00    0.00       3         dtable::init_std_file_from_handle(int, void*) [129]
                0.00    0.00       3/155         muto::acquire(unsigned long) [18]
                0.00    0.00       3/155         muto::release() [19]
                0.00    0.00       3/3           build_fh_dev(device const&, char const*) [107]
                0.00    0.00       3/3           fhandler_pipe::init(void*, unsigned long, unsigned int) [124]
                0.00    0.00       3/3           set_std_handle(int)@4 [108]
                0.00    0.00       3/3           dtable::select_read(int, select_stuff*) [128]
-----------------------------------------------
                0.00    0.00       3/3           __get_locale_env [3152]
[130]    0.0    0.00    0.00       3         _getenv_r [130]
                0.00    0.00       3/17          cur_environ@0 [51]
-----------------------------------------------
                0.00    0.00       3/3           dll_entry@12 [4664]
[131]    0.0    0.00    0.00       3         cygwin_inet_network [131]
-----------------------------------------------
                0.00    0.00       1/3           ld_preload() [166]
                0.00    0.00       1/3           pwdgrp::read_passwd() [246]
                0.00    0.00       1/3           cygheap_user::ontherange(homebodies, passwd*) [211]
[132]    0.0    0.00    0.00       3         getenv [132]
                0.00    0.00       3/17          cur_environ@0 [51]
-----------------------------------------------
                0.00    0.00       3/3           environ_init(char**, int) [175]
[133]    0.0    0.00    0.00       3         setenv [133]
-----------------------------------------------
                0.00    0.00       1/3           fhandler_base::fstat(__stat64*)@8 [216]
                0.00    0.00       1/3           frok::parent(char volatile*)@8 [231]
                0.00    0.00       1/3           pinfo::thisproc(void*) [234]
[134]    0.0    0.00    0.00       3         time [134]
                0.00    0.00       3/3           to_time_t(_FILETIME*)@4 [114]
-----------------------------------------------
                0.00    0.00       1/2           pinfo::wait() [233]
                0.00    0.00       1/2           sigproc_init()@0 [176]
[135]    0.0    0.00    0.00       2         create_pipe(void**, void**, _SECURITY_ATTRIBUTES*, unsigned long)@16 [135]
-----------------------------------------------
                0.00    0.00       1/2           cygthread::callfunc(bool) [155]
                0.00    0.00       1/2           frok::parent(char volatile*)@8 [231]
[136]    0.0    0.00    0.00       2         proc_subproc(unsigned long, unsigned long)@8 [136]
                0.00    0.00       1/155         muto::acquire(unsigned long) [18]
                0.00    0.00       1/1           pinfo::wait() [233]
                0.00    0.00       1/155         muto::release() [19]
-----------------------------------------------
                0.00    0.00       1/2           hash_path_name(unsigned long long, wchar_t const*)@12 [177]
                0.00    0.00       1/2           fstat64 [284]
[137]    0.0    0.00    0.00       2         hash_path_name(unsigned long long, _UNICODE_STRING*)@12 [137]
-----------------------------------------------
                0.00    0.00       1/2           mount_info::from_fstab(bool, wchar_t*, wchar_t*) [142]
                0.00    0.00       1/2           get_nt_native_path(char const*, _UNICODE_STRING&, bool) [185]
[138]    0.0    0.00    0.00       2         transform_chars(wchar_t*, wchar_t*) [138]
-----------------------------------------------
                                   1             pwdgrp::read_group() <cycle 1> [245]
                0.00    0.00       1/1           internal_getlogin(cygheap_user&) [182]
[139]    0.0    0.00    0.00       2         internal_getgrgid(unsigned long, bool) <cycle 1> [139]
                0.00    0.00       1/155         muto::acquire(unsigned long) [18]
                0.00    0.00       1/155         muto::release() [19]
                                   1             pwdgrp::read_group() <cycle 1> [245]
-----------------------------------------------
                0.00    0.00       1/2           user_info::initialize() [273]
                0.00    0.00       1/2           internal_getlogin(cygheap_user&) [182]
[140]    0.0    0.00    0.00       2         internal_getpwsid(cygpsid&) [140]
                0.00    0.00       2/7           cygpsid::string(char*) const [78]
                0.00    0.00       1/155         muto::acquire(unsigned long) [18]
                0.00    0.00       1/155         muto::release() [19]
                0.00    0.00       1/1           pwdgrp::read_passwd() [246]
-----------------------------------------------
                0.00    0.00       2/2           frok::parent(char volatile*)@8 [231]
[141]    0.0    0.00    0.00       2         child_info::sync(int, void*&, unsigned long) [141]
-----------------------------------------------
                0.00    0.00       2/2           mount_info::init() [201]
[142]    0.0    0.00    0.00       2         mount_info::from_fstab(bool, wchar_t*, wchar_t*) [142]
                0.00    0.00       6/6           mount_info::from_fstab_line(char*, bool) [81]
                0.00    0.00       1/281         sys_mbstowcs(wchar_t*, unsigned int, char const*, unsigned int)@16 [15]
                0.00    0.00       1/2           transform_chars(wchar_t*, wchar_t*) [138]
-----------------------------------------------
                0.00    0.00       2/2           pthread::pthread() [152]
[143]    0.0    0.00    0.00       2         pthread_attr::pthread_attr() [143]
-----------------------------------------------
                0.00    0.00       2/2           set_std_handle(int)@4 [108]
[144]    0.0    0.00    0.00       2         fhandler_base::get_output_handle() [144]
-----------------------------------------------
                0.00    0.00       2/2           wait_sig(void*)@4 [5]
[145]    0.0    0.00    0.00       2         pending_signals::next() [145]
-----------------------------------------------
                0.00    0.00       2/2           wait_sig(void*)@4 [5]
[146]    0.0    0.00    0.00       2         pending_signals::reset() [146]
-----------------------------------------------
                0.00    0.00       2/2           etc::init(int, _OBJECT_ATTRIBUTES*) [148]
[147]    0.0    0.00    0.00       2         etc::test_file_change(int) [147]
-----------------------------------------------
                0.00    0.00       2/2           pwdgrp::load(wchar_t const*) [149]
[148]    0.0    0.00    0.00       2         etc::init(int, _OBJECT_ATTRIBUTES*) [148]
                0.00    0.00       2/2           etc::test_file_change(int) [147]
-----------------------------------------------
                0.00    0.00       1/2           pwdgrp::read_group() <cycle 1> [245]
                0.00    0.00       1/2           pwdgrp::read_passwd() [246]
[149]    0.0    0.00    0.00       2         pwdgrp::load(wchar_t const*) [149]
                0.00    0.00      33/36          pwdgrp::add_line(char*) [38]
                0.00    0.00       2/2           etc::init(int, _OBJECT_ATTRIBUTES*) [148]
-----------------------------------------------
                0.00    0.00       2/2           sig_send(_pinfo*, siginfo_t&, _cygtls*)@12 [112]
[150]    0.0    0.00    0.00       2         _cygtls::call_signal_handler() [150]
-----------------------------------------------
                0.00    0.00       1/2           pthread::self() [48]
                0.00    0.00       1/2           pthread::init_mainthread() [256]
[151]    0.0    0.00    0.00       2         pthread::set_tls_self_pointer(pthread*) [151]
-----------------------------------------------
                0.00    0.00       1/2           pthread_null::pthread_null() [214]
                0.00    0.00       1/2           pthread::init_mainthread() [256]
[152]    0.0    0.00    0.00       2         pthread::pthread() [152]
                0.00    0.00       2/2           pthread_attr::pthread_attr() [143]
                0.00    0.00       2/9           pthread_mutex::pthread_mutex(pthread_mutexattr*) [65]
                0.00    0.00       2/3           pthread_null::get_null_pthread() [119]
-----------------------------------------------
                0.00    0.00       2/2           _cygtls::call2(unsigned long (*)(void*, void*), void*, void*) [3]
[153]    0.0    0.00    0.00       2         cygthread::stub(void*)@4 [153]
                0.00    0.00       2/2           cygthread::callfunc(bool) [155]
-----------------------------------------------
                0.00    0.00       1/2           pinfo::wait() [233]
                0.00    0.00       1/2           sigproc_init()@0 [176]
[154]    0.0    0.00    0.00       2         cygthread::create() [154]
-----------------------------------------------
                0.00    0.00       2/2           cygthread::stub(void*)@4 [153]
[155]    0.0    0.00    0.00       2         cygthread::callfunc(bool) [155]
                0.00    0.00       1/1           pinfo::maybe_set_exit_code_from_windows() [232]
                0.00    0.00       1/2           proc_subproc(unsigned long, unsigned long)@8 [136]
-----------------------------------------------
                0.00    0.00       1/2           pinfo::wait() [233]
                0.00    0.00       1/2           sigproc_init()@0 [176]
[156]    0.0    0.00    0.00       2         cygthread::operator new(unsigned int) [156]
-----------------------------------------------
                0.00    0.00       2/2           loadlocale [5125]
[157]    0.0    0.00    0.00       2         __set_ctype [157]
-----------------------------------------------
                0.00    0.00       2/2           __ctype_load_locale [3112]
[158]    0.0    0.00    0.00       2         __set_lc_ctype_from_win [158]
                0.00    0.00       2/3           initial_setlocale() [110]
-----------------------------------------------
                0.00    0.00       1/2           _cygtls::init() [252]
                0.00    0.00       1/2           sigalloc()@0 [195]
[159]    0.0    0.00    0.00       2         ccalloc_abort@12 [159]
                0.00    0.00       2/46          init_cygheap::manage_console_count(char const*, int, bool) [35]
-----------------------------------------------
                0.00    0.00       1/2           dll_crt0_0()@0 [164]
                0.00    0.00       1/2           _cygwin_exit_return [3356]
[160]    0.0    0.00    0.00       2         cygwin_exit [160]
-----------------------------------------------
                0.00    0.00       1/2           __main [3236]
                0.00    0.00       1/2           dll_crt0_0()@0 [164]
[161]    0.0    0.00    0.00       2         dll_crt0(per_process *) [161]
-----------------------------------------------
                0.00    0.00       1/1           memory_init(bool) [171]
[162]    0.0    0.00    0.00       1         RtlInt64ToHexUnicodeString@16 [162]
-----------------------------------------------
                0.00    0.00       1/1           frok::parent(char volatile*)@8 [231]
[163]    0.0    0.00    0.00       1         child_copy(void*, bool, ...) [163]
-----------------------------------------------
                0.00    0.00       1/1           _cygwin_exit_return [3356]
[164]    0.0    0.00    0.00       1         dll_crt0_0()@0 [164]
                0.00    0.00       1/2           cygwin_exit [160]
                0.00    0.00       1/1           init_global_security() [186]
                0.00    0.00       1/1           getstack(char volatile*) [194]
                0.00    0.00       1/10          muto::init(char const*) [62]
                0.00    0.00       1/1           set_cygwin_privileges(void*) [190]
                0.00    0.00       1/1           device::init() [240]
                0.00    0.00       1/2           dll_crt0(per_process *) [161]
                0.00    0.00       1/1           cygthread::init() [265]
                0.00    0.00       1/1           get_cygwin_startup_info() [192]
                0.00    0.00       1/1           MTinterface::Init() [203]
                0.00    0.00       1/1           _cygtls::init() [252]
                0.00    0.00       1/1           events_init() [170]
                0.00    0.00       1/1           tty_list::init_session()@0 [263]
                0.00    0.00       1/1           sigproc_init()@0 [176]
                0.00    0.00       1/1           memory_init(bool) [171]
-----------------------------------------------
                0.00    0.00       1/1           _cygtls::call2(unsigned long (*)(void*, void*), void*, void*) [3]
[165]    0.0    0.00    0.00       1         dll_crt0_1(void*) [165]
                0.00    0.00       1/1           dll_list::init() [262]
                0.00    0.00       1/1           ld_preload() [166]
-----------------------------------------------
                0.00    0.00       1/1           dll_crt0_1(void*) [165]
[166]    0.0    0.00    0.00       1         ld_preload() [166]
                0.00    0.00       1/3           getenv [132]
-----------------------------------------------
                0.00    0.00       1/1           _cygwin_exit_return [3356]
[167]    0.0    0.00    0.00       1         pinfo_init(char**, int)@8 [167]
                0.00    0.00       1/1           pinfo::thisproc(void*) [234]
                0.00    0.00       1/1           environ_init(char**, int) [175]
                0.00    0.00       1/1           winprio_to_nice(unsigned long) [179]
-----------------------------------------------
                0.00    0.00       1/1           _cygwin_exit_return [3356]
[168]    0.0    0.00    0.00       1         uinfo_init() [168]
                0.00    0.00       1/1           internal_getlogin(cygheap_user&) [182]
-----------------------------------------------
                0.00    0.00       1/1           _cygwin_exit_return [3356]
[169]    0.0    0.00    0.00       1         dtable_init() [169]
                0.00    0.00       1/1           dtable::extend(int) [243]
-----------------------------------------------
                0.00    0.00       1/1           dll_crt0_0()@0 [164]
[170]    0.0    0.00    0.00       1         events_init() [170]
                0.00    0.00       1/10          muto::init(char const*) [62]
-----------------------------------------------
                0.00    0.00       1/1           dll_crt0_0()@0 [164]
[171]    0.0    0.00    0.00       1         memory_init(bool) [171]
                0.00    0.00       1/22          getpagesize [46]
                0.00    0.00       1/1           cygheap_init()@0 [174]
                0.00    0.00       1/1           cygheap_user::init() [212]
                0.00    0.00       1/9           reg_key::reg_key(bool, unsigned long, ...) [67]
                0.00    0.00       1/1           reg_key::set_string(wchar_t*, wchar_t*) [258]
                0.00    0.00       1/1           hash_path_name(unsigned long long, wchar_t const*)@12 [177]
                0.00    0.00       1/1           RtlInt64ToHexUnicodeString@16 [162]
                0.00    0.00       1/3           open_shared(wchar_t const*, int, void*&, unsigned long, shared_locations, _SECURITY_ATTRIBUTES*, unsigned long)@28 [106]
                0.00    0.00       1/1           shared_info::initialize() [207]
                0.00    0.00       1/1           user_info::create(bool) [274]
                0.00    0.00       1/9           reg_key::~reg_key() [68]
-----------------------------------------------
                0.00    0.00       1/1           tty_list::init_session()@0 [263]
[172]    0.0    0.00    0.00       1         shared_name(char*, char const*, int)@12 [172]
                0.00    0.00       1/44          __small_sprintf(char*, char const*, ...) [36]
-----------------------------------------------
                0.00    0.00       1/1           get_shared_parent_dir() [80]
[173]    0.0    0.00    0.00       1         _everyone_sd(void*, unsigned long) [173]
-----------------------------------------------
                0.00    0.00       1/1           memory_init(bool) [171]
[174]    0.0    0.00    0.00       1         cygheap_init()@0 [174]
                0.00    0.00       1/10          muto::init(char const*) [62]
                0.00    0.00       1/1           sigalloc()@0 [195]
                0.00    0.00       1/46          init_cygheap::manage_console_count(char const*, int, bool) [35]
-----------------------------------------------
                0.00    0.00       1/1           pinfo_init(char**, int)@8 [167]
[175]    0.0    0.00    0.00       1         environ_init(char**, int) [175]
                0.00    0.00     132/132         cygwin_strncasecmp@12 [22]
                0.00    0.00      65/65          sys_wcstombs_alloc(char**, int, wchar_t const*, unsigned int)@16 [29]
                0.00    0.00      28/56          getwinenv(char const*, char const*, win_env*)@12 [32]
                0.00    0.00       3/3           setenv [133]
                0.00    0.00       1/72          tmp_pathbuf::tmp_pathbuf() [27]
                0.00    0.00       1/5           tmp_pathbuf::w_get() [92]
                0.00    0.00       1/72          tmp_pathbuf::~tmp_pathbuf() [28]
                0.00    0.00       1/1           update_envptrs()@0 [178]
-----------------------------------------------
                0.00    0.00       1/1           dll_crt0_0()@0 [164]
[176]    0.0    0.00    0.00       1         sigproc_init()@0 [176]
                0.00    0.00       1/4           __sec_user(void*, void*, void*, unsigned long, int)@20 [95]
                0.00    0.00       1/2           create_pipe(void**, void**, _SECURITY_ATTRIBUTES*, unsigned long)@16 [135]
                0.00    0.00       1/2           cygthread::operator new(unsigned int) [156]
                0.00    0.00       1/2           cygthread::create() [154]
                0.00    0.00       1/10          muto::init(char const*) [62]
-----------------------------------------------
                0.00    0.00       1/1           memory_init(bool) [171]
[177]    0.0    0.00    0.00       1         hash_path_name(unsigned long long, wchar_t const*)@12 [177]
                0.00    0.00       1/2           hash_path_name(unsigned long long, _UNICODE_STRING*)@12 [137]
-----------------------------------------------
                0.00    0.00       1/1           environ_init(char**, int) [175]
[178]    0.0    0.00    0.00       1         update_envptrs()@0 [178]
-----------------------------------------------
                0.00    0.00       1/1           pinfo_init(char**, int)@8 [167]
[179]    0.0    0.00    0.00       1         winprio_to_nice(unsigned long) [179]
-----------------------------------------------
                0.00    0.00       1/1           __call_exitprocs [3098]
[180]    0.0    0.00    0.00       1         dll_global_dtors() [180]
-----------------------------------------------
                0.00    0.00       1/1           dtable::stdio_init() [241]
[181]    0.0    0.00    0.00       1         set_console_ctty() [181]
                0.00    0.00       1/1           fhandler_console::get_tty_stuff(int) [221]
-----------------------------------------------
                0.00    0.00       1/1           uinfo_init() [168]
[182]    0.0    0.00    0.00       1         internal_getlogin(cygheap_user&) [182]
                0.00    0.00       1/2           internal_getpwsid(cygpsid&) [140]
                0.00    0.00       1/3           cygheap_user::set_name(char const*) [118]
                0.00    0.00       1/1           internal_getgrgid(unsigned long, bool) <cycle 1> [139]
                0.00    0.00       1/1           cygsid::getfromgr(__group32 const*) [239]
                0.00    0.00       1/1           cygheap_user::ontherange(homebodies, passwd*) [211]
-----------------------------------------------
                0.00    0.00       1/1           pwdgrp::read_passwd() [246]
[183]    0.0    0.00    0.00       1         internal_getpwnam(char const*, bool) [183]
                0.00    0.00       6/6           cygwin_strcasecmp@8 [87]
-----------------------------------------------
                0.00    0.00       1/1           pwdgrp::read_passwd() [246]
[184]    0.0    0.00    0.00       1         internal_getpwuid(unsigned long, bool) [184]
-----------------------------------------------
                0.00    0.00       1/1           path_conv::get_nt_native_path() [268]
[185]    0.0    0.00    0.00       1         get_nt_native_path(char const*, _UNICODE_STRING&, bool) [185]
                0.00    0.00       1/281         sys_mbstowcs(wchar_t*, unsigned int, char const*, unsigned int)@16 [15]
                0.00    0.00       1/2           transform_chars(wchar_t*, wchar_t*) [138]
-----------------------------------------------
                0.00    0.00       1/1           dll_crt0_0()@0 [164]
[186]    0.0    0.00    0.00       1         init_global_security() [186]
-----------------------------------------------
                0.00    0.00       1/1           __main [3236]
[187]    0.0    0.00    0.00       1         sig_dispatch_pending(bool)@4 [187]
                0.00    0.00       1/3           sig_send(_pinfo*, int)@8 [113]
-----------------------------------------------
                0.00    0.00       1/1           _cygwin_exit_return [3356]
[188]    0.0    0.00    0.00       1         check_sanity_and_sync(per_process*)@4 [188]
-----------------------------------------------
                0.00    0.00       1/1           _cygwin_exit_return [3356]
[189]    0.0    0.00    0.00       1         create_signal_arrived()@0 [189]
-----------------------------------------------
                0.00    0.00       1/1           dll_crt0_0()@0 [164]
[190]    0.0    0.00    0.00       1         set_cygwin_privileges(void*) [190]
                0.00    0.00       4/4           set_privilege(void*, unsigned long, bool) [97]
-----------------------------------------------
                0.00    0.00       1/1           shared_info::initialize() [207]
[191]    0.0    0.00    0.00       1         get_session_parent_dir() [191]
                0.00    0.00       1/6           get_shared_parent_dir() [80]
-----------------------------------------------
                0.00    0.00       1/1           dll_crt0_0()@0 [164]
[192]    0.0    0.00    0.00       1         get_cygwin_startup_info() [192]
-----------------------------------------------
                0.00    0.00       1/1           _cygwin_exit_return [3356]
[193]    0.0    0.00    0.00       1         _pei386_runtime_relocator(per_process*) [193]
                0.00    0.00       1/1           mq_close [288]
-----------------------------------------------
                0.00    0.00       1/1           dll_crt0_0()@0 [164]
[194]    0.0    0.00    0.00       1         getstack(char volatile*) [194]
-----------------------------------------------
                0.00    0.00       1/1           cygheap_init()@0 [174]
[195]    0.0    0.00    0.00       1         sigalloc()@0 [195]
                0.00    0.00       1/2           ccalloc_abort@12 [159]
-----------------------------------------------
                0.00    0.00       1/1           parse_options(char*)@4 [1003]
[196]    0.0    0.00    0.00       1         build_env(char const* const*, wchar_t*&, int&, bool)@16 [196]
-----------------------------------------------
                0.00    0.00       1/1           shared_info::initialize() [207]
[197]    0.0    0.00    0.00       1         heap_init() [197]
                0.00    0.00       1/1           shared_info::heap_chunk_size() [209]
                0.00    0.00       1/1           shared_info::heap_slop_size() [208]
-----------------------------------------------
                0.00    0.00       1/1           child_info_fork::child_info_fork() [220]
[198]    0.0    0.00    0.00       1         child_info::child_info(unsigned int, child_info_types, bool) [198]
-----------------------------------------------
                0.00    0.00       1/1           fork [283]
[199]    0.0    0.00    0.00       1         child_info::~child_info() [199]
-----------------------------------------------
                0.00    0.00       1/1           cwdstuff::set(path_conv*, char const*) [260]
[200]    0.0    0.00    0.00       1         mount_info::conv_to_posix_path(wchar_t*, char*, int) [200]
                0.00    0.00       1/72          tmp_pathbuf::tmp_pathbuf() [27]
                0.00    0.00       1/64          tmp_pathbuf::c_get() [30]
                0.00    0.00       1/136         sys_wcstombs(char*, unsigned int, wchar_t const*, unsigned int)@16 [20]
                0.00    0.00       1/30          mount_info::conv_to_posix_path(char const*, char*, int) [41]
                0.00    0.00       1/72          tmp_pathbuf::~tmp_pathbuf() [28]
-----------------------------------------------
                0.00    0.00       1/1           user_info::initialize() [273]
[201]    0.0    0.00    0.00       1         mount_info::init() [201]
                0.00    0.00       3/3           mount_info::add_item(char const*, char const*, unsigned int) [116]
                0.00    0.00       2/2           mount_info::from_fstab(bool, wchar_t*, wchar_t*) [142]
                0.00    0.00       1/136         sys_wcstombs(char*, unsigned int, wchar_t const*, unsigned int)@16 [20]
-----------------------------------------------
                0.00    0.00       1/1           pthread::atforkprepare() [255]
[202]    0.0    0.00    0.00       1         MTinterface::fixup_before_fork() [202]
                0.00    0.00       1/8           fast_mutex::lock() [71]
                0.00    0.00       1/8           fast_mutex::unlock() [72]
-----------------------------------------------
                0.00    0.00       1/1           dll_crt0_0()@0 [164]
[203]    0.0    0.00    0.00       1         MTinterface::Init() [203]
                0.00    0.00       1/1           pthread_mutex::init_mutex() [217]
                0.00    0.00       1/1           pthread_cond::init_mutex() [213]
                0.00    0.00       1/1           pthread_rwlock::init_mutex() [219]
-----------------------------------------------
                0.00    0.00       1/1           fhandler_console::get_tty_stuff(int) [221]
[204]    0.0    0.00    0.00       1         dev_console::set_default_attr() [204]
                0.00    0.00       1/1           dev_console::set_color(void*) [205]
-----------------------------------------------
                0.00    0.00       1/1           dev_console::set_default_attr() [204]
[205]    0.0    0.00    0.00       1         dev_console::set_color(void*) [205]
-----------------------------------------------
                0.00    0.00       1/1           __static_initialization_and_destruction_0(int, int) [858]
[206]    0.0    0.00    0.00       1         pinfo_basic::pinfo_basic() [206]
-----------------------------------------------
                0.00    0.00       1/1           memory_init(bool) [171]
[207]    0.0    0.00    0.00       1         shared_info::initialize() [207]
                0.00    0.00       1/1           get_session_parent_dir() [191]
                0.00    0.00       1/1           shared_info::init_obcaseinsensitive() [210]
                0.00    0.00       1/1           tty_list::init() [264]
                0.00    0.00       1/1           mtinfo::initialize() [244]
                0.00    0.00       1/1           heap_init() [197]
-----------------------------------------------
                0.00    0.00       1/1           heap_init() [197]
[208]    0.0    0.00    0.00       1         shared_info::heap_slop_size() [208]
                0.00    0.00       2/9           reg_key::reg_key(bool, unsigned long, ...) [67]
                0.00    0.00       2/4           reg_key::get_int(char const*, int) [101]
                0.00    0.00       2/9           reg_key::~reg_key() [68]
-----------------------------------------------
                0.00    0.00       1/1           heap_init() [197]
[209]    0.0    0.00    0.00       1         shared_info::heap_chunk_size() [209]
                0.00    0.00       2/9           reg_key::reg_key(bool, unsigned long, ...) [67]
                0.00    0.00       2/4           reg_key::get_int(char const*, int) [101]
                0.00    0.00       2/9           reg_key::~reg_key() [68]
-----------------------------------------------
                0.00    0.00       1/1           shared_info::initialize() [207]
[210]    0.0    0.00    0.00       1         shared_info::init_obcaseinsensitive() [210]
-----------------------------------------------
                0.00    0.00       1/1           internal_getlogin(cygheap_user&) [182]
[211]    0.0    0.00    0.00       1         cygheap_user::ontherange(homebodies, passwd*) [211]
                0.00    0.00       1/72          tmp_pathbuf::tmp_pathbuf() [27]
                0.00    0.00       1/72          tmp_pathbuf::~tmp_pathbuf() [28]
                0.00    0.00       1/3           getenv [132]
-----------------------------------------------
                0.00    0.00       1/1           memory_init(bool) [171]
[212]    0.0    0.00    0.00       1         cygheap_user::init() [212]
                0.00    0.00       2/136         sys_wcstombs(char*, unsigned int, wchar_t const*, unsigned int)@16 [20]
                0.00    0.00       1/3           cygheap_user::set_name(char const*) [118]
                0.00    0.00       1/4           __sec_user(void*, void*, void*, unsigned long, int)@20 [95]
-----------------------------------------------
                0.00    0.00       1/1           MTinterface::Init() [203]
[213]    0.0    0.00    0.00       1         pthread_cond::init_mutex() [213]
-----------------------------------------------
                0.00    0.00       1/1           __static_initialization_and_destruction_0(int, int) [867]
[214]    0.0    0.00    0.00       1         pthread_null::pthread_null() [214]
                0.00    0.00       1/2           pthread::pthread() [152]
-----------------------------------------------
                0.00    0.00       1/1           set_std_handle(int)@4 [108]
[215]    0.0    0.00    0.00       1         fhandler_base::get_handle() [215]
-----------------------------------------------
                0.00    0.00       1/1           fstat64 [284]
[216]    0.0    0.00    0.00       1         fhandler_base::fstat(__stat64*)@8 [216]
                0.00    0.00       1/1           geteuid32 [286]
                0.00    0.00       1/1           getegid32 [285]
                0.00    0.00       1/3           time [134]
-----------------------------------------------
                0.00    0.00       1/1           MTinterface::Init() [203]
[217]    0.0    0.00    0.00       1         pthread_mutex::init_mutex() [217]
-----------------------------------------------
                0.00    0.00       1/1           __static_initialization_and_destruction_0(int, int) [865]
[218]    0.0    0.00    0.00       1         timer_tracker::timer_tracker(unsigned long, sigevent const*) [218]
-----------------------------------------------
                0.00    0.00       1/1           MTinterface::Init() [203]
[219]    0.0    0.00    0.00       1         pthread_rwlock::init_mutex() [219]
-----------------------------------------------
                0.00    0.00       1/1           fork [283]
[220]    0.0    0.00    0.00       1         child_info_fork::child_info_fork() [220]
                0.00    0.00       1/1           child_info::child_info(unsigned int, child_info_types, bool) [198]
-----------------------------------------------
                0.00    0.00       1/1           set_console_ctty() [181]
[221]    0.0    0.00    0.00       1         fhandler_console::get_tty_stuff(int) [221]
                0.00    0.00       1/3           open_shared(wchar_t const*, int, void*&, unsigned long, shared_locations, _SECURITY_ATTRIBUTES*, unsigned long)@28 [106]
                0.00    0.00       1/1           _pinfo::set_ctty(tty_min*, int, fhandler_tty_slave*) [236]
                0.00    0.00       1/1           dev_console::set_default_attr() [204]
-----------------------------------------------
                0.00    0.00       1/1           dtable::stdio_init() [241]
[222]    0.0    0.00    0.00       1         fhandler_console::need_invisible() [222]
-----------------------------------------------
                0.00    0.00       1/1           __static_initialization_and_destruction_0(int, int) [864]
[223]    0.0    0.00    0.00       1         fhandler_dev_zero::fhandler_dev_zero() [223]
                0.00    0.00       1/4           fhandler_base::fhandler_base() [99]
-----------------------------------------------
                0.00    0.00       1/1           _cygwin_exit_return [3356]
[224]    0.0    0.00    0.00       1         tty::init_session()@0 [224]
                0.00    0.00       1/1           dtable::get_debugger_info() [242]
-----------------------------------------------
                0.00    0.00       1/1           __static_initialization_and_destruction_0(int, int) [867]
[225]    0.0    0.00    0.00       1         List<pthread_key>::List() [225]
-----------------------------------------------
                0.00    0.00       1/1           __static_initialization_and_destruction_0(int, int) [867]
[226]    0.0    0.00    0.00       1         List<pthread_cond>::List() [226]
-----------------------------------------------
                0.00    0.00       1/1           __static_initialization_and_destruction_0(int, int) [867]
[227]    0.0    0.00    0.00       1         List<pthread_mutex>::List() [227]
-----------------------------------------------
                0.00    0.00       1/1           __static_initialization_and_destruction_0(int, int) [867]
[228]    0.0    0.00    0.00       1         List<pthread_rwlock>::List() [228]
-----------------------------------------------
                0.00    0.00       1/1           __static_initialization_and_destruction_0(int, int) [867]
[229]    0.0    0.00    0.00       1         List<pthread>::List() [229]
-----------------------------------------------
                0.00    0.00       1/1           __static_initialization_and_destruction_0(int, int) [867]
[230]    0.0    0.00    0.00       1         List<semaphore>::List() [230]
-----------------------------------------------
                0.00    0.00       1/1           fork [283]
[231]    0.0    0.00    0.00       1         frok::parent(char volatile*)@8 [231]
                0.00    0.00       2/2           child_info::sync(int, void*&, unsigned long) [141]
                0.00    0.00       1/155         muto::acquire(unsigned long) [18]
                0.00    0.00       1/3           time [134]
                0.00    0.00       1/1           strace::write_childpid(child_info&, unsigned long) [249]
                0.00    0.00       1/3           pinfo::init(int, unsigned long, void*) [127]
                0.00    0.00       1/2           proc_subproc(unsigned long, unsigned long)@8 [136]
                0.00    0.00       1/1           child_copy(void*, bool, ...) [163]
                0.00    0.00       1/155         muto::release() [19]
                0.00    0.00       1/1           fnmatch [282]
-----------------------------------------------
                0.00    0.00       1/1           cygthread::callfunc(bool) [155]
[232]    0.0    0.00    0.00       1         pinfo::maybe_set_exit_code_from_windows() [232]
-----------------------------------------------
                0.00    0.00       1/1           proc_subproc(unsigned long, unsigned long)@8 [136]
[233]    0.0    0.00    0.00       1         pinfo::wait() [233]
                0.00    0.00       1/2           create_pipe(void**, void**, _SECURITY_ATTRIBUTES*, unsigned long)@16 [135]
                0.00    0.00       1/1           _pinfo::dup_proc_pipe(void*) [235]
                0.00    0.00       1/2           cygthread::operator new(unsigned int) [156]
                0.00    0.00       1/2           cygthread::create() [154]
-----------------------------------------------
                0.00    0.00       1/1           pinfo_init(char**, int)@8 [167]
[234]    0.0    0.00    0.00       1         pinfo::thisproc(void*) [234]
                0.00    0.00       1/3           pinfo::init(int, unsigned long, void*) [127]
                0.00    0.00       1/1           strace::hello() [250]
                0.00    0.00       1/3           time [134]
-----------------------------------------------
                0.00    0.00       1/1           pinfo::wait() [233]
[235]    0.0    0.00    0.00       1         _pinfo::dup_proc_pipe(void*) [235]
-----------------------------------------------
                0.00    0.00       1/1           fhandler_console::get_tty_stuff(int) [221]
[236]    0.0    0.00    0.00       1         _pinfo::set_ctty(tty_min*, int, fhandler_tty_slave*) [236]
                0.00    0.00       1/1           lock_ttys::lock_ttys(unsigned long) [267]
                0.00    0.00       1/3           pinfo::init(int, unsigned long, void*) [127]
                0.00    0.00       1/1           lock_ttys::release() [266]
-----------------------------------------------
                0.00    0.00       1/1           cygsid::getfromgr(__group32 const*) [239]
[237]    0.0    0.00    0.00       1         cygsid::getfromstr(char const*, bool) [237]
                0.00    0.00       1/1           cygsid::get_sid(unsigned long, unsigned long, unsigned long*, bool) [238]
-----------------------------------------------
                0.00    0.00       1/1           cygsid::getfromstr(char const*, bool) [237]
[238]    0.0    0.00    0.00       1         cygsid::get_sid(unsigned long, unsigned long, unsigned long*, bool) [238]
-----------------------------------------------
                0.00    0.00       1/1           internal_getlogin(cygheap_user&) [182]
[239]    0.0    0.00    0.00       1         cygsid::getfromgr(__group32 const*) [239]
                0.00    0.00       1/1           cygsid::getfromstr(char const*, bool) [237]
-----------------------------------------------
                0.00    0.00       1/1           dll_crt0_0()@0 [164]
[240]    0.0    0.00    0.00       1         device::init() [240]
-----------------------------------------------
                0.00    0.00       1/1           _cygwin_exit_return [3356]
[241]    0.0    0.00    0.00       1         dtable::stdio_init() [241]
                0.00    0.00       3/3           dtable::init_std_file_from_handle(int, void*) [129]
                0.00    0.00       1/1           fhandler_console::need_invisible() [222]
                0.00    0.00       1/1           set_console_ctty() [181]
                0.00    0.00       1/155         muto::acquire(unsigned long) [18]
                0.00    0.00       1/155         muto::release() [19]
-----------------------------------------------
                0.00    0.00       1/1           tty::init_session()@0 [224]
[242]    0.0    0.00    0.00       1         dtable::get_debugger_info() [242]
-----------------------------------------------
                0.00    0.00       1/1           dtable_init() [169]
[243]    0.0    0.00    0.00       1         dtable::extend(int) [243]
                0.00    0.00       1/4           ccalloc@12 [103]
-----------------------------------------------
                0.00    0.00       1/1           shared_info::initialize() [207]
[244]    0.0    0.00    0.00       1         mtinfo::initialize() [244]
                0.00    0.00       8/8           mtinfo_drive::initialize(int, bool) [74]
-----------------------------------------------
                                   1             internal_getgrgid(unsigned long, bool) <cycle 1> [139]
[245]    0.0    0.00    0.00       1         pwdgrp::read_group() <cycle 1> [245]
                0.00    0.00       1/2           pwdgrp::load(wchar_t const*) [149]
                0.00    0.00       1/36          pwdgrp::add_line(char*) [38]
                                   1             internal_getgrgid(unsigned long, bool) <cycle 1> [139]
-----------------------------------------------
                0.00    0.00       1/1           internal_getpwsid(cygpsid&) [140]
[246]    0.0    0.00    0.00       1         pwdgrp::read_passwd() [246]
                0.00    0.00       2/36          pwdgrp::add_line(char*) [38]
                0.00    0.00       1/2           pwdgrp::load(wchar_t const*) [149]
                0.00    0.00       1/7           cygpsid::string(char*) const [78]
                0.00    0.00       1/1           internal_getpwnam(char const*, bool) [183]
                0.00    0.00       1/3           getenv [132]
                0.00    0.00       1/1           internal_getpwuid(unsigned long, bool) [184]
-----------------------------------------------
                0.00    0.00       1/1           __static_initialization_and_destruction_0(int, int) [863]
[247]    0.0    0.00    0.00       1         pwdgrp::pwdgrp(passwd*&) [247]
                0.00    0.00       1/10          muto::init(char const*) [62]
-----------------------------------------------
                0.00    0.00       1/1           __static_initialization_and_destruction_0(int, int) [856]
[248]    0.0    0.00    0.00       1         pwdgrp::pwdgrp(__group32*&) [248]
                0.00    0.00       1/10          muto::init(char const*) [62]
-----------------------------------------------
                0.00    0.00       1/1           frok::parent(char volatile*)@8 [231]
[249]    0.0    0.00    0.00       1         strace::write_childpid(child_info&, unsigned long) [249]
-----------------------------------------------
                0.00    0.00       1/1           pinfo::thisproc(void*) [234]
[250]    0.0    0.00    0.00       1         strace::hello() [250]
-----------------------------------------------
                0.00    0.00       1/1           __static_initialization_and_destruction_0(int, int) [868]
[251]    0.0    0.00    0.00       1         strace::activate() [251]
                0.00    0.00       1/44          __small_sprintf(char*, char const*, ...) [36]
-----------------------------------------------
                0.00    0.00       1/1           dll_crt0_0()@0 [164]
[252]    0.0    0.00    0.00       1         _cygtls::init() [252]
                0.00    0.00       1/10          muto::init(char const*) [62]
                0.00    0.00       1/2           ccalloc_abort@12 [159]
-----------------------------------------------
                0.00    0.00       1/1           pthread::init_mainthread() [256]
[253]    0.0    0.00    0.00       1         pthread::postcreate() [253]
-----------------------------------------------
                0.00    0.00       1/1           fork [283]
[254]    0.0    0.00    0.00       1         pthread::atforkparent() [254]
-----------------------------------------------
                0.00    0.00       1/1           fork [283]
[255]    0.0    0.00    0.00       1         pthread::atforkprepare() [255]
                0.00    0.00       1/1           MTinterface::fixup_before_fork() [202]
-----------------------------------------------
                0.00    0.00       1/1           _cygwin_exit_return [3356]
[256]    0.0    0.00    0.00       1         pthread::init_mainthread() [256]
                0.00    0.00       1/2           pthread::set_tls_self_pointer(pthread*) [151]
                0.00    0.00       1/1           pthread::create_cancel_event() [257]
                0.00    0.00       1/1           pthread::postcreate() [253]
                0.00    0.00       1/9           __wrap__Znwj [70]
                0.00    0.00       1/2           pthread::pthread() [152]
-----------------------------------------------
                0.00    0.00       1/1           pthread::init_mainthread() [256]
[257]    0.0    0.00    0.00       1         pthread::create_cancel_event() [257]
-----------------------------------------------
                0.00    0.00       1/1           memory_init(bool) [171]
[258]    0.0    0.00    0.00       1         reg_key::set_string(wchar_t*, wchar_t*) [258]
-----------------------------------------------
                0.00    0.00       1/1           cwdstuff::set(path_conv*, char const*) [260]
[259]    0.0    0.00    0.00       1         cwdstuff::override_win32_cwd(bool, unsigned long) [259]
-----------------------------------------------
                0.00    0.00       1/1           cwdstuff::init() [261]
[260]    0.0    0.00    0.00       1         cwdstuff::set(path_conv*, char const*) [260]
                0.00    0.00       2/8           crealloc_abort@8 [75]
                0.00    0.00       1/155         muto::acquire(unsigned long) [18]
                0.00    0.00       1/1           cwdstuff::override_win32_cwd(bool, unsigned long) [259]
                0.00    0.00       1/72          tmp_pathbuf::tmp_pathbuf() [27]
                0.00    0.00       1/155         muto::release() [19]
                0.00    0.00       1/72          tmp_pathbuf::~tmp_pathbuf() [28]
                0.00    0.00       1/64          tmp_pathbuf::c_get() [30]
                0.00    0.00       1/1           mount_info::conv_to_posix_path(wchar_t*, char*, int) [200]
-----------------------------------------------
                0.00    0.00       1/1           _cygwin_exit_return [3356]
[261]    0.0    0.00    0.00       1         cwdstuff::init() [261]
                0.00    0.00       1/10          muto::init(char const*) [62]
                0.00    0.00       1/1           cwdstuff::set(path_conv*, char const*) [260]
-----------------------------------------------
                0.00    0.00       1/1           dll_crt0_1(void*) [165]
[262]    0.0    0.00    0.00       1         dll_list::init() [262]
-----------------------------------------------
                0.00    0.00       1/1           dll_crt0_0()@0 [164]
[263]    0.0    0.00    0.00       1         tty_list::init_session()@0 [263]
                0.00    0.00       1/1           shared_name(char*, char const*, int)@12 [172]
-----------------------------------------------
                0.00    0.00       1/1           shared_info::initialize() [207]
[264]    0.0    0.00    0.00       1         tty_list::init() [264]
                0.00    0.00     128/128         tty::init() [23]
-----------------------------------------------
                0.00    0.00       1/1           dll_crt0_0()@0 [164]
[265]    0.0    0.00    0.00       1         cygthread::init() [265]
-----------------------------------------------
                0.00    0.00       1/1           _pinfo::set_ctty(tty_min*, int, fhandler_tty_slave*) [236]
[266]    0.0    0.00    0.00       1         lock_ttys::release() [266]
-----------------------------------------------
                0.00    0.00       1/1           _pinfo::set_ctty(tty_min*, int, fhandler_tty_slave*) [236]
[267]    0.0    0.00    0.00       1         lock_ttys::lock_ttys(unsigned long) [267]
-----------------------------------------------
                0.00    0.00       1/1           fstat64 [284]
[268]    0.0    0.00    0.00       1         path_conv::get_nt_native_path() [268]
                0.00    0.00       1/5           cmalloc_abort@8 [94]
                0.00    0.00       1/1           get_nt_native_path(char const*, _UNICODE_STRING&, bool) [185]
-----------------------------------------------
                0.00    0.00       1/1           sem_init [289]
[269]    0.0    0.00    0.00       1         semaphore::init(semaphore**, int, unsigned int) [269]
                0.00    0.00       2/59          __getreent [31]
                0.00    0.00       1/9           __wrap__Znwj [70]
                0.00    0.00       1/1           semaphore::semaphore(int, unsigned int) [272]
-----------------------------------------------
                0.00    0.00       1/1           sem_post [290]
[270]    0.0    0.00    0.00       1         semaphore::post(semaphore**) [270]
                0.00    0.00       1/59          __getreent [31]
                0.00    0.00       1/1           semaphore::_post() [271]
-----------------------------------------------
                0.00    0.00       1/1           semaphore::post(semaphore**) [270]
[271]    0.0    0.00    0.00       1         semaphore::_post() [271]
-----------------------------------------------
                0.00    0.00       1/1           semaphore::init(semaphore**, int, unsigned int) [269]
[272]    0.0    0.00    0.00       1         semaphore::semaphore(int, unsigned int) [272]
-----------------------------------------------
                0.00    0.00       1/1           _cygwin_exit_return [3356]
[273]    0.0    0.00    0.00       1         user_info::initialize() [273]
                0.00    0.00       1/2           internal_getpwsid(cygpsid&) [140]
                0.00    0.00       1/3           cygheap_user::set_name(char const*) [118]
                0.00    0.00       1/1           mount_info::init() [201]
-----------------------------------------------
                0.00    0.00       1/1           memory_init(bool) [171]
[274]    0.0    0.00    0.00       1         user_info::create(bool) [274]
                0.00    0.00       1/1           cygpsid::string(wchar_t*) const [275]
                0.00    0.00       1/3           open_shared(wchar_t const*, int, void*&, unsigned long, shared_locations, _SECURITY_ATTRIBUTES*, unsigned long)@28 [106]
-----------------------------------------------
                0.00    0.00       1/1           user_info::create(bool) [274]
[275]    0.0    0.00    0.00       1         cygpsid::string(wchar_t*) const [275]
-----------------------------------------------
                0.00    0.00       1/1           initial_setlocale() [110]
[276]    0.0    0.00    0.00       1         __set_locale_from_locale_alias [276]
-----------------------------------------------
                0.00    0.00       1/1           __smakebuf_r [3294]
[277]    0.0    0.00    0.00       1         _fstat64_r [277]
                0.00    0.00       1/1           fstat64 [284]
-----------------------------------------------
                0.00    0.00       1/1           __call_exitprocs [3098]
[278]    0.0    0.00    0.00       1         cygxdr_vwarnx [278]
-----------------------------------------------
                0.00    0.00       1/1           posify(char**, char const*, char*)@12 [1217]
[279]    0.0    0.00    0.00       1         env_PATH_to_posix [279]
                0.00    0.00       1/30          cygwin_conv_path [42]
-----------------------------------------------
                0.00    0.00       1/1           std_dll_init [5593]
[280]    0.0    0.00    0.00       1         fegetenv [280]
-----------------------------------------------
                0.00    0.00       1/1           std_dll_init [5593]
[281]    0.0    0.00    0.00       1         fesetenv [281]
-----------------------------------------------
                0.00    0.00       1/1           frok::parent(char volatile*)@8 [231]
[282]    0.0    0.00    0.00       1         fnmatch [282]
-----------------------------------------------
                0.00    0.00       1/1           _sigfe [3491]
[283]    0.0    0.00    0.00       1         fork [283]
                0.00    0.00       2/3           sig_send(_pinfo*, int)@8 [113]
                0.00    0.00       1/1           child_info_fork::child_info_fork() [220]
                0.00    0.00       1/1           pthread::atforkprepare() [255]
                0.00    0.00       1/155         muto::acquire(unsigned long) [18]
                0.00    0.00       1/72          tmp_pathbuf::tmp_pathbuf() [27]
                0.00    0.00       1/1           child_info::~child_info() [199]
                0.00    0.00       1/1           frok::parent(char volatile*)@8 [231]
                0.00    0.00       1/72          tmp_pathbuf::~tmp_pathbuf() [28]
                0.00    0.00       1/155         muto::release() [19]
                0.00    0.00       1/1           pthread::atforkparent() [254]
-----------------------------------------------
                0.00    0.00       1/1           _fstat64_r [277]
[284]    0.0    0.00    0.00       1         fstat64 [284]
                0.00    0.00       2/5           cygheap_fdmanip::operator->() const [93]
                0.00    0.00       1/7           cygheap_fdget::cygheap_fdget(int, bool, bool) [76]
                0.00    0.00       1/1           fhandler_base::fstat(__stat64*)@8 [216]
                0.00    0.00       1/1           path_conv::get_nt_native_path() [268]
                0.00    0.00       1/2           hash_path_name(unsigned long long, _UNICODE_STRING*)@12 [137]
-----------------------------------------------
                0.00    0.00       1/1           fhandler_base::fstat(__stat64*)@8 [216]
[285]    0.0    0.00    0.00       1         getegid32 [285]
-----------------------------------------------
                0.00    0.00       1/1           fhandler_base::fstat(__stat64*)@8 [216]
[286]    0.0    0.00    0.00       1         geteuid32 [286]
-----------------------------------------------
                0.00    0.00       1/1           initial_setlocale() [110]
[287]    0.0    0.00    0.00       1         internal_setlocale [287]
                0.00    0.00       1/72          tmp_pathbuf::tmp_pathbuf() [27]
                0.00    0.00       1/72          tmp_pathbuf::~tmp_pathbuf() [28]
-----------------------------------------------
                0.00    0.00       1/1           _pei386_runtime_relocator(per_process*) [193]
[288]    0.0    0.00    0.00       1         mq_close [288]
-----------------------------------------------
                0.00    0.00       1/1           _sigfe [3491]
[289]    0.0    0.00    0.00       1         sem_init [289]
                0.00    0.00       1/1           semaphore::init(semaphore**, int, unsigned int) [269]
-----------------------------------------------
                0.00    0.00       1/1           _sigfe [3491]
[290]    0.0    0.00    0.00       1         sem_post [290]
                0.00    0.00       1/1           semaphore::post(semaphore**) [270]
-----------------------------------------------
                0.00    0.00       1/1           init_mparams() [976]
[291]    0.0    0.00    0.00       1         sysconf [291]
                0.00    0.00       1/1           unlinkat [292]
-----------------------------------------------
                0.00    0.00       1/1           sysconf [291]
[292]    0.0    0.00    0.00       1         unlinkat [292]
-----------------------------------------------

 This table describes the call tree of the program, and was sorted by
 the total amount of time spent in each function and its children.

 Each entry in this table consists of several lines.  The line with the
 index number at the left hand margin lists the current function.
 The lines above it list the functions that called this function,
 and the lines below it list the functions this one called.
 This line lists:
     index	A unique number given to each element of the table.
		Index numbers are sorted numerically.
		The index number is printed next to every function name so
		it is easier to look up where the function in the table.

     % time	This is the percentage of the `total' time that was spent
		in this function and its children.  Note that due to
		different viewpoints, functions excluded by options, etc,
		these numbers will NOT add up to 100%.

     self	This is the total amount of time spent in this function.

     children	This is the total amount of time propagated into this
		function by its children.

     called	This is the number of times the function was called.
		If the function called itself recursively, the number
		only includes non-recursive calls, and is followed by
		a `+' and the number of recursive calls.

     name	The name of the current function.  The index number is
		printed after it.  If the function is a member of a
		cycle, the cycle number is printed between the
		function's name and the index number.


 For the function's parents, the fields have the following meanings:

     self	This is the amount of time that was propagated directly
		from the function into this parent.

     children	This is the amount of time that was propagated from
		the function's children into this parent.

     called	This is the number of times this parent called the
		function `/' the total number of times the function
		was called.  Recursive calls to the function are not
		included in the number after the `/'.

     name	This is the name of the parent.  The parent's index
		number is printed after it.  If the parent is a
		member of a cycle, the cycle number is printed between
		the name and the index number.

 If the parents of the function cannot be determined, the word
 `<spontaneous>' is printed in the `name' field, and all the other
 fields are blank.

 For the function's children, the fields have the following meanings:

     self	This is the amount of time that was propagated directly
		from the child into the function.

     children	This is the amount of time that was propagated from the
		child's children to the function.

     called	This is the number of times the function called
		this child `/' the total number of times the child
		was called.  Recursive calls by the child are not
		listed in the number after the `/'.

     name	This is the name of the child.  The child's index
		number is printed after it.  If the child is a
		member of a cycle, the cycle number is printed
		between the name and the index number.

 If there are any cycles (circles) in the call graph, there is an
 entry for the cycle-as-a-whole.  This entry shows who called the
 cycle (as parents) and the members of the cycle (as children.)
 The `+' recursive calls entry shows the number of function calls that
 were internal to the cycle, and the calls entry for each member shows,
 for that member, how many times it was called from other members of
 the cycle.

\f
Index by function name

 [162] RtlInt64ToHexUnicodeString@16 [210] shared_info::init_obcaseinsensitive() [258] reg_key::set_string(wchar_t*, wchar_t*)
  [95] __sec_user(void*, void*, void*, unsigned long, int)@20 [30] tmp_pathbuf::c_get() [101] reg_key::get_int(char const*, int)
 [163] child_copy(void*, bool, ...) [92] tmp_pathbuf::w_get() [50] reg_key::build_reg(HKEY__*, unsigned long, char*)
 [164] dll_crt0_0()@0         [27] tmp_pathbuf::tmp_pathbuf() [66] reg_key::reg_key(HKEY__*, unsigned long, ...)
 [165] dll_crt0_1(void*)      [28] tmp_pathbuf::~tmp_pathbuf() [67] reg_key::reg_key(bool, unsigned long, ...)
 [166] ld_preload()          [211] cygheap_user::ontherange(homebodies, passwd*) [68] reg_key::~reg_key()
 [167] pinfo_init(char**, int)@8 [212] cygheap_user::init() [102] win_env::add_cache(char const*, char const*)
 [168] uinfo_init()          [118] cygheap_user::set_name(char const*) [259] cwdstuff::override_win32_cwd(bool, unsigned long)
 [105] build_fh_pc(path_conv&, bool) [35] init_cygheap::manage_console_count(char const*, int, bool) [260] cwdstuff::set(path_conv*, char const*)
 [135] create_pipe(void**, void**, _SECURITY_ATTRIBUTES*, unsigned long)@16 [74] mtinfo_drive::initialize(int, bool) [261] cwdstuff::init()
 [169] dtable_init()         [143] pthread_attr::pthread_attr() [262] dll_list::init()
 [170] events_init()         [213] pthread_cond::init_mutex() [263] tty_list::init_session()@0
 [171] memory_init(bool)     [119] pthread_null::get_null_pthread() [264] tty_list::init()
 [106] open_shared(wchar_t const*, int, void*&, unsigned long, shared_locations, _SECURITY_ATTRIBUTES*, unsigned long)@28 [214] pthread_null::pthread_null() [265] cygthread::init()
  [89] open_shared(wchar_t const*, int, void*&, unsigned long, shared_locations*, _SECURITY_ATTRIBUTES*, unsigned long)@28 [76] cygheap_fdget::cygheap_fdget(int, bool, bool) [153] cygthread::stub(void*)@4
 [172] shared_name(char*, char const*, int)@12 [215] fhandler_base::get_handle() [154] cygthread::create()
  [96] shared_name(wchar_t*, wchar_t const*, int)@12 [144] fhandler_base::get_output_handle() [155] cygthread::callfunc(bool)
 [173] _everyone_sd(void*, unsigned long) [120] fhandler_base::init(void*, unsigned long, unsigned int) [156] cygthread::operator new(unsigned int)
 [107] build_fh_dev(device const&, char const*) [216] fhandler_base::fstat(__stat64*)@8 [6] exception::exception()
 [174] cygheap_init()@0      [121] fhandler_base::set_name(char const*) [266] lock_ttys::release()
 [175] environ_init(char**, int) [122] fhandler_base::set_name(path_conv&) [267] lock_ttys::lock_ttys(unsigned long)
 [136] proc_subproc(unsigned long, unsigned long)@8 [123] fhandler_base::set_flags(int, int) [268] path_conv::get_nt_native_path()
 [176] sigproc_init()@0       [99] fhandler_base::fhandler_base() [82] path_conv::set_normalized_path(char const*)
  [15] sys_mbstowcs(wchar_t*, unsigned int, char const*, unsigned int)@16 [124] fhandler_pipe::init(void*, unsigned long, unsigned int) [40] path_conv::~path_conv()
  [20] sys_wcstombs(char*, unsigned int, wchar_t const*, unsigned int)@16 [125] fhandler_pipe::fhandler_pipe() [269] semaphore::init(semaphore**, int, unsigned int)
  [25] path_prefix_p(char const*, char const*, int, bool) [217] pthread_mutex::init_mutex() [270] semaphore::post(semaphore**)
  [97] set_privilege(void*, unsigned long, bool) [77] pthread_mutex::init(pthread_mutex**, pthread_mutexattr* const*, pthread_mutex*) [271] semaphore::_post()
 [137] hash_path_name(unsigned long long, _UNICODE_STRING*)@12 [58] pthread_mutex::lock() [272] semaphore::semaphore(int, unsigned int)
 [177] hash_path_name(unsigned long long, wchar_t const*)@12 [61] pthread_mutex::unlock() [273] user_info::initialize()
 [108] set_std_handle(int)@4  [65] pthread_mutex::pthread_mutex(pthread_mutexattr*) [274] user_info::create(bool)
 [178] update_envptrs()@0    [218] timer_tracker::timer_tracker(unsigned long, sigevent const*) [93] cygheap_fdmanip::operator->() const
  [36] __small_sprintf(char*, char const*, ...) [219] pthread_rwlock::init_mutex() [8] pinfo::operator->() const
  [16] sys_cp_mbstowcs(int (*)(_reent*, wchar_t*, char const*, unsigned int, char const*, _mbstate_t*), char const*, wchar_t*, unsigned int, char const*, unsigned int)@24 [220] child_info_fork::child_info_fork() [4] strace::active() const
  [21] sys_cp_wcstombs(int (*)(_reent*, char*, wchar_t, char const*, _mbstate_t*), char const*, char*, unsigned int, wchar_t const*, unsigned int)@24 [145] pending_signals::next() [78] cygpsid::string(char*) const
 [138] transform_chars(wchar_t*, wchar_t*) [146] pending_signals::reset() [275] cygpsid::string(wchar_t*) const
 [179] winprio_to_nice(unsigned long) [221] fhandler_console::get_tty_stuff(int) [83] operator new[](unsigned int)
  [90] __small_swprintf(wchar_t*, wchar_t const*, ...) [222] fhandler_console::need_invisible() [69] operator new(unsigned int)
  [37] __small_vsprintf(char*, char const*, char*) [223] fhandler_dev_zero::fhandler_dev_zero() [84] __cygwin_lock_init_recursive
 [180] dll_global_dtors()    [126] fhandler_base_overlapped::destroy_overlapped() [59] __cygwin_lock_lock
 [181] set_console_ctty()    [147] etc::test_file_change(int) [63] __cygwin_lock_unlock
  [91] __small_vswprintf(wchar_t*, wchar_t const*, char*) [148] etc::init(int, _OBJECT_ATTRIBUTES*) [31] __getreent
 [109] env_path_to_posix(void const*, void*, unsigned int) [224] tty::init_session()@0 [53] __ntohs
 [110] initial_setlocale()    [23] tty::init()           [157] __set_ctype
 [139] internal_getgrgid(unsigned long, bool) [225] List<pthread_key>::List() [158] __set_lc_ctype_from_win
 [182] internal_getlogin(cygheap_user&) [226] List<pthread_cond>::List() [276] __set_locale_from_locale_alias
 [183] internal_getpwnam(char const*, bool) [227] List<pthread_mutex>::List() [70] __wrap__Znwj
 [140] internal_getpwsid(cygpsid&) [228] List<pthread_rwlock>::List() [85] _cygwin_istext_for_stdio
 [184] internal_getpwuid(unsigned long, bool) [229] List<pthread>::List() [277] _fstat64_r
  [33] sigproc_terminate(exit_states)@4 [230] List<semaphore>::List() [130] _getenv_r
 [185] get_nt_native_path(char const*, _UNICODE_STRING&, bool) [231] frok::parent(char volatile*)@8 [103] ccalloc@12
  [29] sys_wcstombs_alloc(char**, int, wchar_t const*, unsigned int)@16 [62] muto::init(char const*) [159] ccalloc_abort@12
 [186] init_global_security() [18] muto::acquire(unsigned long) [86] cfree@4
 [111] normalize_posix_path(char const*, char*, char*&) [19] muto::release() [57] cmalloc@8
  [39] normalize_win32_path(char const*, char*, char*&) [232] pinfo::maybe_set_exit_code_from_windows() [94] cmalloc_abort@8
 [187] sig_dispatch_pending(bool)@4 [127] pinfo::init(int, unsigned long, void*) [75] crealloc_abort@8
 [188] check_sanity_and_sync(per_process*)@4 [233] pinfo::wait() [79] cstrdup@4
 [189] create_signal_arrived()@0 [234] pinfo::thisproc(void*) [51] cur_environ@0
  [80] get_shared_parent_dir() [235] _pinfo::dup_proc_pipe(void*) [42] cygwin_conv_path
 [190] set_cygwin_privileges(void*) [236] _pinfo::set_ctty(tty_min*, int, fhandler_tty_slave*) [160] cygwin_exit
 [191] get_session_parent_dir() [237] cygsid::getfromstr(char const*, bool) [131] cygwin_inet_network
 [192] get_cygwin_startup_info() [238] cygsid::get_sid(unsigned long, unsigned long, unsigned long*, bool) [87] cygwin_strcasecmp@8
 [193] _pei386_runtime_relocator(per_process*) [239] cygsid::getfromgr(__group32 const*) [22] cygwin_strncasecmp@12
  [98] sec_acl(_ACL*, bool, bool, void*, void*, unsigned long) [240] device::init() [278] cygxdr_vwarnx
 [194] getstack(char volatile*) [241] dtable::stdio_init() [26] dlcalloc
 [112] sig_send(_pinfo*, siginfo_t&, _cygtls*)@12 [128] dtable::select_read(int, select_stuff*) [56] dlfree
 [113] sig_send(_pinfo*, int)@8 [242] dtable::get_debugger_info() [161] dll_crt0(per_process *)
 [195] sigalloc()@0          [129] dtable::init_std_file_from_handle(int, void*) [24] dlmalloc
  [43] slashify(char const*, char*, bool) [243] dtable::extend(int) [54] dlmalloc_footprint
 [196] build_env(char const* const*, wchar_t*&, int&, bool)@16 [244] mtinfo::initialize() [55] dlrealloc
  [32] getwinenv(char const*, char const*, win_env*)@12 [245] pwdgrp::read_group() [104] dlvalloc
 [197] heap_init()            [47] pwdgrp::parse_group() [279] env_PATH_to_posix
 [114] to_time_t(_FILETIME*)@4 [246] pwdgrp::read_passwd() [280] fegetenv
 [141] child_info::sync(int, void*&, unsigned long) [52] pwdgrp::parse_passwd() [281] fesetenv
 [198] child_info::child_info(unsigned int, child_info_types, bool) [149] pwdgrp::load(wchar_t const*) [282] fnmatch
 [199] child_info::~child_info() [38] pwdgrp::add_line(char*) [283] fork
  [71] fast_mutex::lock()     [34] pwdgrp::next_num(unsigned long&) [284] fstat64
  [72] fast_mutex::unlock()   [17] pwdgrp::next_str(char) [285] getegid32
 [142] mount_info::from_fstab(bool, wchar_t*, wchar_t*) [247] pwdgrp::pwdgrp(passwd*&) [132] getenv
  [81] mount_info::from_fstab_line(char*, bool) [248] pwdgrp::pwdgrp(__group32*&) [286] geteuid32
  [73] mount_info::get_cygdrive_info(char*, char*, char*, char*) [249] strace::write_childpid(child_info&, unsigned long) [46] getpagesize
  [41] mount_info::conv_to_posix_path(char const*, char*, int) [250] strace::hello() [287] internal_setlocale
 [200] mount_info::conv_to_posix_path(wchar_t*, char*, int) [251] strace::activate() [288] mq_close
  [44] mount_info::cygdrive_posix_path(char const*, char*, int) [1] _cygtls::init_thread(void*, unsigned long (*)(void*, void*)) [60] pthread_mutex_lock
 [201] mount_info::init()    [150] _cygtls::call_signal_handler() [64] pthread_mutex_unlock
 [115] mount_info::sort()      [2] _cygtls::call(unsigned long (*)(void*, void*), void*) [49] pthread_self
 [116] mount_info::add_item(char const*, char const*, unsigned int) [252] _cygtls::init() [88] sbrk
 [117] mount_item::init(char const*, char const*, unsigned int) [3] _cygtls::call2(unsigned long (*)(void*, void*), void*, void*) [289] sem_init
 [202] MTinterface::fixup_before_fork() [253] pthread::postcreate() [290] sem_post
 [203] MTinterface::Init()   [254] pthread::atforkparent() [133] setenv
 [204] dev_console::set_default_attr() [255] pthread::atforkprepare() [45] strccpy@12
 [205] dev_console::set_color(void*) [256] pthread::init_mainthread() [291] sysconf
  [14] mtinfo_part::initialize(long) [257] pthread::create_cancel_event() [134] time
 [206] pinfo_basic::pinfo_basic() [151] pthread::set_tls_self_pointer(pthread*) [292] unlinkat
 [207] shared_info::initialize() [48] pthread::self()     [10] <cycle 1>
 [208] shared_info::heap_slop_size() [152] pthread::pthread()
 [209] shared_info::heap_chunk_size() [100] reg_key::get_string(wchar_t const*, wchar_t*, unsigned int, wchar_t const*)

[-- Attachment #4: Type: text/plain, Size: 218 bytes --]

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2011-03-06 14:19 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-03-06 14:41 profiling cygwin itself jojelino

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).