Subject: CVS commit: src/sys/compat
To: None <source-changes@NetBSD.org>
From: David Laight <dsl@netbsd.org>
List: source-changes
Date: 03/10/2007 21:40:26
Module Name:	src
Committed By:	dsl
Date:		Sat Mar 10 21:40:26 UTC 2007

Modified Files:
	src/sys/compat/aoutm68k: aoutm68k_stat.c
	src/sys/compat/common: Makefile
	src/sys/compat/darwin: darwin_attr.c
	src/sys/compat/hpux: hpux_file.c
	src/sys/compat/ibcs2: ibcs2_stat.c ibcs2_stat.h
	src/sys/compat/irix: irix_stat.c
	src/sys/compat/linux/common: linux_file.c linux_file64.c
	src/sys/compat/linux32/common: linux32_stat.c
	src/sys/compat/netbsd32: netbsd32_compat_30.c netbsd32_fs.c
	src/sys/compat/osf1: osf1_file.c
	src/sys/compat/sunos32: sunos32_misc.c
	src/sys/compat/svr4: svr4_stat.c
	src/sys/compat/svr4_32: svr4_32_stat.c

Log Message:
Update all the compat stuff to not use the 'stackgap' for processing
sys_stat() and friends, instead use do_sys_stat() and do_sys_fstat()
that write the answer into a kernel buffer (on stack) that can be
converted to the correct form and written the userspace.
I've test compiled a few kernels, and tested i386 netbsd1.6 ls.
Given I think I've fixed some bugs, it might be 50-50 with new ones.


To generate a diff of this commit:
cvs rdiff -r1.17 -r1.18 src/sys/compat/aoutm68k/aoutm68k_stat.c
cvs rdiff -r1.37 -r1.38 src/sys/compat/common/Makefile
cvs rdiff -r1.14 -r1.15 src/sys/compat/darwin/darwin_attr.c
cvs rdiff -r1.33 -r1.34 src/sys/compat/hpux/hpux_file.c
cvs rdiff -r1.37 -r1.38 src/sys/compat/ibcs2/ibcs2_stat.c
cvs rdiff -r1.3 -r1.4 src/sys/compat/ibcs2/ibcs2_stat.h
cvs rdiff -r1.15 -r1.16 src/sys/compat/irix/irix_stat.c
cvs rdiff -r1.80 -r1.81 src/sys/compat/linux/common/linux_file.c
cvs rdiff -r1.36 -r1.37 src/sys/compat/linux/common/linux_file64.c
cvs rdiff -r1.3 -r1.4 src/sys/compat/linux32/common/linux32_stat.c
cvs rdiff -r1.17 -r1.18 src/sys/compat/netbsd32/netbsd32_compat_30.c
cvs rdiff -r1.36 -r1.37 src/sys/compat/netbsd32/netbsd32_fs.c
cvs rdiff -r1.22 -r1.23 src/sys/compat/osf1/osf1_file.c
cvs rdiff -r1.45 -r1.46 src/sys/compat/sunos32/sunos32_misc.c
cvs rdiff -r1.60 -r1.61 src/sys/compat/svr4/svr4_stat.c
cvs rdiff -r1.24 -r1.25 src/sys/compat/svr4_32/svr4_32_stat.c

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