From owner-cvs-src-old@FreeBSD.ORG Thu Sep 9 17:50:40 2010 Return-Path: Delivered-To: cvs-src-old@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 119BC1065790 for ; Thu, 9 Sep 2010 17:50:40 +0000 (UTC) (envelope-from mdf@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id DA54E8FC1B for ; Thu, 9 Sep 2010 17:50:39 +0000 (UTC) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.4/8.14.4) with ESMTP id o89Hod68014277 for ; Thu, 9 Sep 2010 17:50:39 GMT (envelope-from mdf@repoman.freebsd.org) Received: (from svn2cvs@localhost) by repoman.freebsd.org (8.14.4/8.14.4/Submit) id o89HoduY014276 for cvs-src-old@freebsd.org; Thu, 9 Sep 2010 17:50:39 GMT (envelope-from mdf@repoman.freebsd.org) Message-Id: <201009091750.o89HoduY014276@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: svn2cvs set sender to mdf@repoman.freebsd.org using -f From: Matthew D Fleming Date: Thu, 9 Sep 2010 17:49:18 +0000 (UTC) To: cvs-src-old@freebsd.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/share/man/man9 Makefile sbuf.9 src/sys/kern subr_sbuf.c src/sys/sys sbuf.h X-BeenThere: cvs-src-old@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 09 Sep 2010 17:50:40 -0000 mdf 2010-09-09 17:49:18 UTC FreeBSD src repository Modified files: share/man/man9 Makefile sbuf.9 sys/kern subr_sbuf.c sys/sys sbuf.h Log: SVN rev 212367 on 2010-09-09 17:49:18Z by mdf Add drain functionality to sbufs. The drain is a function that is called when the sbuf internal buffer is filled. For kernel sbufs with a drain, the internal buffer will never be expanded. For userland sbufs with a drain, the internal buffer may still be expanded by sbuf_[v]printf(3). Sbufs now have three basic uses: 1) static string manipulation. Overflow is marked. 2) dynamic string manipulation. Overflow triggers string growth. 3) drained string manipulation. Overflow triggers draining. In all cases the manipulation is 'safe' in that overflow is detected and managed. Reviewed by: phk (the previous version) Revision Changes Path 1.374 +1 -0 src/share/man/man9/Makefile 1.29 +99 -7 src/share/man/man9/sbuf.9 1.38 +99 -6 src/sys/kern/subr_sbuf.c 1.17 +8 -2 src/sys/sys/sbuf.h