set hashfraction; enable getting gmonparam
[unix-history] / usr / src / sys / kern / kern_clock.c
index cee074b..9180b4f 100644 (file)
@@ -4,7 +4,7 @@
  *
  * %sccs.include.redist.c%
  *
  *
  * %sccs.include.redist.c%
  *
- *     @(#)kern_clock.c        7.29 (Berkeley) %G%
+ *     @(#)kern_clock.c        7.31 (Berkeley) %G%
  */
 
 #include <sys/param.h>
  */
 
 #include <sys/param.h>
@@ -19,7 +19,6 @@
 
 #ifdef GPROF
 #include <sys/gmon.h>
 
 #ifdef GPROF
 #include <sys/gmon.h>
-extern u_short *kcount;
 #endif
 
 #define ADJTIME                /* For now... */
 #endif
 
 #define ADJTIME                /* For now... */
@@ -385,8 +384,10 @@ statclock(frame)
                g = &_gmonparam;
                if (g->state == GMON_PROF_ON) {
                        i = CLKF_PC(frame) - g->lowpc;
                g = &_gmonparam;
                if (g->state == GMON_PROF_ON) {
                        i = CLKF_PC(frame) - g->lowpc;
-                       if (i < g->textsize)
-                               kcount[i / (HISTFRACTION * sizeof(*kcount))]++;
+                       if (i < g->textsize) {
+                               i /= HISTFRACTION * sizeof(*g->kcount);
+                               g->kcount[i]++;
+                       }
                }
 #endif
                if (--pscnt > 0)
                }
 #endif
                if (--pscnt > 0)
@@ -460,7 +461,7 @@ statclock(frame)
  */
 sysctl_clockrate(where, sizep)
        register char *where;
  */
 sysctl_clockrate(where, sizep)
        register char *where;
-       int *sizep;
+       size_t *sizep;
 {
        struct clockinfo clkinfo;
 
 {
        struct clockinfo clkinfo;