cvs commit: src/sbin/dmesg dmesg.c src/sys/sys msgbuf.h src/sys/conf files src/sys/kern subr_log.c subr_msgbuf.c subr_prf.c

Ian Dowse iedowse at FreeBSD.org
Sat Jun 21 19:18:32 PDT 2003


iedowse     2003/06/21 19:18:31 PDT

  FreeBSD src repository

  Modified files:
    sbin/dmesg           dmesg.c 
    sys/sys              msgbuf.h 
    sys/conf             files 
    sys/kern             subr_log.c subr_prf.c 
  Added files:
    sys/kern             subr_msgbuf.c 
  Log:
  Replace the code for reading and writing the kernel message buffer
  with a new implementation that has a mostly reentrant "addchar"
  routine, supports multiple message buffers in the kernel, and hides
  the implementation details from callers.
  
  The new code uses a kind of sequence number to represend the current
  read and write positions in the buffer. This approach (suggested
  mainly by bde) permits the read and write pointers to be maintained
  separately, which reduces the number of atomic operations that are
  required. The "mostly reentrant" above refers to the way that while
  it is now always safe to have any number of concurrent writers,
  readers could see the message buffer after a writer has advanced
  the pointers but before it has witten the new character.
  
  Discussed on:   freebsd-arch
  
  Revision  Changes    Path
  1.20      +1 -3      src/sbin/dmesg/dmesg.c
  1.796     +1 -0      src/sys/conf/files
  1.58      +7 -18     src/sys/kern/subr_log.c
  1.1       +239 -0    src/sys/kern/subr_msgbuf.c (new)
  1.103     +26 -94    src/sys/kern/subr_prf.c
  1.21      +22 -4     src/sys/sys/msgbuf.h


More information about the cvs-src mailing list