Subject: CVS commit: src/sys/coda
To: None <source-changes@NetBSD.org>
From: Greg Troxel <gdt@netbsd.org>
List: source-changes
Date: 03/15/2006 14:30:56
Module Name:	src
Committed By:	gdt
Date:		Wed Mar 15 14:30:56 UTC 2006

Modified Files:
	src/sys/coda: coda_venus.c

Log Message:
Add comments explaining how the 3 size variables for venus calls are
used.

Remove defect in size allocation for coda_readlink to avoid having
venus write outside malloced space by including pathname space before
allocation.

Add asserts that cred structure is non-NULL and non-FSCRED.

Check lwp against NULL before dereferencing it.

Assert that output pointer is non-NULL on a few venus returns.  This "can't
happen" but has been seen in crash dumps.

With these changes, the following work on a 345 MB coda volume.
(Before, a single invocation of tar or pax on this volume would
crash.)

$ for i in $(seq 1 10); do find . -type f -print0 |xargs -0 md5 > MD5.$i & done

Two copies of

$ for i in $(seq 1 10); do pax -w /coda/[redacted] >/dev/null & done

(lwp NULL check semi-reviewed by wrstuden@)


To generate a diff of this commit:
cvs rdiff -r1.19 -r1.20 src/sys/coda/coda_venus.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.