diff -cr squid-1.NOVM.10.orig/src/cache_cf.c squid-1.NOVM.10/src/cache_cf.c *** squid-1.NOVM.10.orig/src/cache_cf.c Fri Apr 25 10:48:08 1997 --- squid-1.NOVM.10/src/cache_cf.c Sun May 11 09:06:01 1997 *************** *** 712,717 **** --- 712,719 ---- self_destruct(); safe_free(*path); *path = xstrdup(token); + if (!strcmp(token, "none")) + return; if (fatal && stat(token, &sb) < 0) { debug(50, 1, "parsePathname: %s: %s\n", token, xstrerror()); self_destruct(); diff -cr squid-1.NOVM.10.orig/src/fdstat.c squid-1.NOVM.10/src/fdstat.c *** squid-1.NOVM.10.orig/src/fdstat.c Tue Apr 1 19:10:46 1997 --- squid-1.NOVM.10/src/fdstat.c Sun May 11 20:42:51 1997 *************** *** 147,152 **** --- 147,153 ---- fd_stat_tab[i].type = FD_UNKNOWN; } Biggest_FD = -1; + Number_FD = 0; } /* call for updating the current biggest fd */ *************** *** 182,187 **** --- 183,189 ---- fd_stat_tab[fd].status = FDSTAT_OPEN; fd_stat_tab[fd].type = type; fdstat_update(fd, FDSTAT_OPEN); + Number_FD++; } int *************** *** 196,201 **** --- 198,204 ---- { fd_stat_tab[fd].status = FDSTAT_CLOSE; fdstat_update(fd, FDSTAT_CLOSE); + Number_FD--; } int diff -cr squid-1.NOVM.10.orig/src/main.c squid-1.NOVM.10/src/main.c *** squid-1.NOVM.10.orig/src/main.c Fri Apr 25 10:48:33 1997 --- squid-1.NOVM.10/src/main.c Sun May 11 09:47:53 1997 *************** *** 127,132 **** --- 127,133 ---- int vhost_mode = 0; int Squid_MaxFD = SQUID_MAXFD; int Biggest_FD = -1; + int Number_FD = 0; int select_loops = 0; /* how many times thru select loop */ volatile int unbuffered_logs = 1; /* debug and hierarchy unbuffered by default */ volatile int shutdown_pending = 0; /* set by SIGTERM handler (shut_down()) */ *************** *** 143,148 **** --- 144,150 ---- /* for error reporting from xmalloc and friends */ extern void (*failure_notify) _PARAMS((const char *)); + static void do_stats _PARAMS((void *x)); static volatile int rotate_pending = 0; /* set by SIGUSR1 handler */ static int httpPortNumOverride = 1; *************** *** 611,616 **** --- 613,619 ---- if (Config.Announce.on) eventAdd("start_announce", start_announce, NULL, 3600); eventAdd("ipcache_purgelru", (EVH) ipcache_purgelru, NULL, 10); + eventAdd("do_stats", do_stats, NULL, 1); } first_time = 0; } *************** *** 770,772 **** --- 773,792 ---- /* signal successfully sent */ exit(0); } + + static void + do_stats(void *x) + { + struct rusage rusage; + struct mallinfo mp; + eventAdd("do_stats", do_stats, NULL, 1); + getrusage(RUSAGE_SELF, &rusage); + mp = mallinfo(); + debug(0,0,"%9d.%06d PF: %d VM: %d FD: %d %d\n", + (int) current_time.tv_sec, + (int) current_time.tv_usec, + rusage.ru_majflt, + mp.arena, + Number_FD, + Biggest_FD); + } diff -cr squid-1.NOVM.10.orig/src/squid.h squid-1.NOVM.10/src/squid.h *** squid-1.NOVM.10.orig/src/squid.h Fri Apr 25 10:48:47 1997 --- squid-1.NOVM.10/src/squid.h Sun May 11 09:52:42 1997 *************** *** 333,338 **** --- 333,339 ---- extern int vhost_mode; /* main.c */ extern int Squid_MaxFD; /* main.c */ extern int Biggest_FD; /* main.c */ + extern int Number_FD; /* main.c */ extern int select_loops; /* main.c */ extern const char *const version_string; /* main.c */ extern const char *const appname; /* main.c */