cvs commit: src/sys/compat/linprocfs linprocfs.c src/sys/kern kern_clock.c src/sys/sys pcpu.h resource.h

Peter Wemm peter at FreeBSD.org
Wed Nov 28 22:34:31 PST 2007


peter       2007-11-29 06:34:30 UTC

  FreeBSD src repository

  Modified files:
    sys/compat/linprocfs linprocfs.c 
    sys/kern             kern_clock.c 
    sys/sys              pcpu.h resource.h 
  Log:
  Move the shared cp_time array (counts %sys, %user, %idle etc) to the
  per-cpu area.  cp_time[] goes away and a new function creates a merged
  cp_time-like array for things like linprocfs, sysctl etc.  The
  atomic ops for updating cp_time[] in statclock go away, and the scope
  of the thread lock is reduced.
  
  sysctl kern.cp_time returns a backwards compatible cp_time[] array.
  A new kern.cp_times sysctl returns the individual per-cpu stats.
  
  I have pending changes to make top and vmstat optionally show per-cpu
  stats.
  
  I'm very aware that there are something like 5 or 6 other versions "out
  there" for doing this - but none were handy when I needed them.
  
  I did merge my changes with John Baldwin's, and ended up replacing a
  few chunks of my stuff with his, and stealing some other code.
  
  Reviewed by:  jhb
  Partly obtained from:  jhb
  
  Revision  Changes    Path
  1.117     +16 -5     src/sys/compat/linprocfs/linprocfs.c
  1.204     +72 -9     src/sys/kern/kern_clock.c
  1.24      +2 -0      src/sys/sys/pcpu.h
  1.32      +1 -1      src/sys/sys/resource.h


More information about the cvs-src mailing list