cvs commit: src/share/man/man4 Makefile cpuctl.4 src/sys/amd64/amd64 support.S src/sys/amd64/conf NOTES src/sys/amd64/include cpufunc.h specialreg.h src/sys/conf files.amd64 files.i386 src/sys/dev/cpuctl cpuctl.c ...

Stanislav Sedov stas at FreeBSD.org
Fri Aug 8 16:31:16 UTC 2008


stas        2008-08-08 16:26:53 UTC

  FreeBSD src repository

  Modified files:
    share/man/man4       Makefile 
    sys/amd64/amd64      support.S 
    sys/amd64/conf       NOTES 
    sys/amd64/include    cpufunc.h specialreg.h 
    sys/conf             files.amd64 files.i386 
    sys/i386/conf        NOTES 
    sys/i386/i386        support.s 
    sys/i386/include     cpufunc.h specialreg.h 
    sys/modules          Makefile 
    sys/sys              priv.h 
    usr.sbin             Makefile 
  Added files:
    share/man/man4       cpuctl.4 
    sys/dev/cpuctl       cpuctl.c 
    sys/modules/cpuctl   Makefile 
    sys/sys              cpuctl.h 
    usr.sbin/cpucontrol  Makefile amd.c amd.h cpucontrol.8 
                         cpucontrol.c cpucontrol.h intel.c intel.h 
  Log:
  SVN rev 181430 on 2008-08-08 16:26:53Z by stas
  
  - Add cpuctl(4) pseudo-device driver to provide access to some low-level
    features of CPUs like reading/writing machine-specific registers,
    retrieving cpuid data, and updating microcode.
  - Add cpucontrol(8) utility, that provides userland access to
    the features of cpuctl(4).
  - Add subsequent manpages.
  
  The cpuctl(4) device operates as follows. The pseudo-device node cpuctlX
  is created for each cpu present in the systems. The pseudo-device minor
  number corresponds to the cpu number in the system. The cpuctl(4) pseudo-
  device allows a number of ioctl to be preformed, namely RDMSR/WRMSR/CPUID
  and UPDATE. The first pair alows the caller to read/write machine-specific
  registers from the correspondent CPU. cpuid data could be retrieved using
  the CPUID call, and microcode updates are applied via UPDATE.
  
  The permissions are inforced based on the pseudo-device file permissions.
  RDMSR/CPUID will be allowed when the caller has read access to the device
  node, while WRMSR/UPDATE will be granted only when the node is opened
  for writing. There're also a number of priv(9) checks.
  
  The cpucontrol(8) utility is intened to provide userland access to
  the cpuctl(4) device features. The utility also allows one to apply
  cpu microcode updates.
  
  Currently only Intel and AMD cpus are supported and were tested.
  
  Approved by:    kib
  Reviewed by:    rpaulo, cokane, Peter Jeremy
  MFC after:      1 month
  
  Revision  Changes    Path
  1.423     +2 -0      src/share/man/man4/Makefile
  1.1       +146 -0    src/share/man/man4/cpuctl.4 (new)
  1.129     +44 -0     src/sys/amd64/amd64/support.S
  1.82      +6 -0      src/sys/amd64/conf/NOTES
  1.150     +5 -0      src/sys/amd64/include/cpufunc.h
  1.46      +7 -0      src/sys/amd64/include/specialreg.h
  1.122     +1 -0      src/sys/conf/files.amd64
  1.601     +1 -0      src/sys/conf/files.i386
  1.1       +446 -0    src/sys/dev/cpuctl/cpuctl.c (new)
  1.1260    +6 -0      src/sys/i386/conf/NOTES
  1.120     +49 -0     src/sys/i386/i386/support.s
  1.147     +5 -0      src/sys/i386/include/cpufunc.h
  1.45      +7 -0      src/sys/i386/include/specialreg.h
  1.582     +3 -0      src/sys/modules/Makefile
  1.1       +8 -0      src/sys/modules/cpuctl/Makefile (new)
  1.1       +52 -0     src/sys/sys/cpuctl.h (new)
  1.21      +7 -1      src/sys/sys/priv.h
  1.391     +3 -0      src/usr.sbin/Makefile
  1.1       +9 -0      src/usr.sbin/cpucontrol/Makefile (new)
  1.1       +183 -0    src/usr.sbin/cpucontrol/amd.c (new)
  1.1       +49 -0     src/usr.sbin/cpucontrol/amd.h (new)
  1.1       +116 -0    src/usr.sbin/cpucontrol/cpucontrol.8 (new)
  1.1       +362 -0    src/usr.sbin/cpucontrol/cpucontrol.c (new)
  1.1       +56 -0     src/usr.sbin/cpucontrol/cpucontrol.h (new)
  1.1       +285 -0    src/usr.sbin/cpucontrol/intel.c (new)
  1.1       +70 -0     src/usr.sbin/cpucontrol/intel.h (new)


More information about the cvs-src mailing list