From owner-cvs-src@FreeBSD.ORG  Wed Nov  1 04:54:51 2006
Return-Path: <owner-cvs-src@FreeBSD.ORG>
X-Original-To: cvs-src@FreeBSD.org
Delivered-To: cvs-src@FreeBSD.org
Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125])
	by hub.freebsd.org (Postfix) with ESMTP id BB14F16A403;
	Wed,  1 Nov 2006 04:54:51 +0000 (UTC) (envelope-from jb@FreeBSD.org)
Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115])
	by mx1.FreeBSD.org (Postfix) with ESMTP id 8814043D49;
	Wed,  1 Nov 2006 04:54:51 +0000 (GMT) (envelope-from jb@FreeBSD.org)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
	by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id kA14spp9014614;
	Wed, 1 Nov 2006 04:54:51 GMT (envelope-from jb@repoman.freebsd.org)
Received: (from jb@localhost)
	by repoman.freebsd.org (8.13.6/8.13.4/Submit) id kA14spYn014613;
	Wed, 1 Nov 2006 04:54:51 GMT (envelope-from jb)
Message-Id: <200611010454.kA14spYn014613@repoman.freebsd.org>
From: John Birrell <jb@FreeBSD.org>
Date: Wed, 1 Nov 2006 04:54:51 +0000 (UTC)
To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org
X-FreeBSD-CVS-Branch: HEAD
Cc: 
Subject: cvs commit: src/sys/amd64/amd64 genassym.c src/sys/arm/arm
 genassym.c src/sys/i386/i386 genassym.c src/sys/ia64/ia64
 genassym.c src/sys/kern subr_prf.c tty_cons.c
 src/sys/powerpc/powerpc genassym.c src/sys/sparc64/sparc64 ...
X-BeenThere: cvs-src@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: CVS commit messages for the src tree <cvs-src.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/cvs-src>,
	<mailto:cvs-src-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/cvs-src>
List-Post: <mailto:cvs-src@freebsd.org>
List-Help: <mailto:cvs-src-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/cvs-src>,
	<mailto:cvs-src-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Wed, 01 Nov 2006 04:54:51 -0000

jb          2006-11-01 04:54:51 UTC

  FreeBSD src repository

  Modified files:
    sys/amd64/amd64      genassym.c 
    sys/arm/arm          genassym.c 
    sys/i386/i386        genassym.c 
    sys/ia64/ia64        genassym.c 
    sys/kern             subr_prf.c tty_cons.c 
    sys/powerpc/powerpc  genassym.c 
    sys/sparc64/sparc64  genassym.c 
    sys/sys              cons.h pcpu.h 
  Log:
  Add a cnputs() function to write a string to the console with
  a lock to prevent interspersed strings written from different CPUs
  at the same time.
  
  To avoid putting a buffer on the stack or having to malloc one,
  space is incorporated in the per-cpu structure. The buffer
  size if 128 bytes; chosen because it's the next power of 2 size
  up from 80 characters.
  
  String writes to the console are buffered up the end of the line
  or until the buffer fills. Then the buffer is flushed to all
  console devices.
  
  Existing low level console output via cnputc() is unaffected by
  this change. ithread calls to log() are also unaffected to avoid
  blocking those threads.
  
  A minor change to the behaviour in a panic situation is that
  console output will still be buffered, but won't be written to
  a tty as before. This should prevent interspersed panic output
  as a number of CPUs panic before we end up single threaded
  running ddb.
  
  Reviewed by:    scottl, jhb
  MFC after:      2 weeks
  
  Revision  Changes    Path
  1.158     +1 -0      src/sys/amd64/amd64/genassym.c
  1.7       +1 -0      src/sys/arm/arm/genassym.c
  1.154     +1 -0      src/sys/i386/i386/genassym.c
  1.43      +1 -0      src/sys/ia64/ia64/genassym.c
  1.126     +72 -17    src/sys/kern/subr_prf.c
  1.136     +25 -0     src/sys/kern/tty_cons.c
  1.57      +1 -0      src/sys/powerpc/powerpc/genassym.c
  1.62      +1 -0      src/sys/sparc64/sparc64/genassym.c
  1.40      +1 -0      src/sys/sys/cons.h
  1.18      +5 -0      src/sys/sys/pcpu.h