PERFORCE change 117725 for review
    Roman Divacky 
    rdivacky at FreeBSD.org
       
    Mon Apr  9 08:27:45 UTC 2007
    
    
  
http://perforce.freebsd.org/chv.cgi?CH=117725
Change 117725 by rdivacky at rdivacky_witten on 2007/04/09 08:26:57
	Linux_statfs64 takes additional parameter.
	
	Submitted by: David Taylor <davidt at yadt.co.uk>
Affected files ...
.. //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_proto.h#24 edit
.. //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_syscall.h#24 edit
.. //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_sysent.c#23 edit
.. //depot/projects/linuxolator/src/sys/amd64/linux32/syscalls.master#24 edit
.. //depot/projects/linuxolator/src/sys/compat/linux/linux_stats.c#11 edit
.. //depot/projects/linuxolator/src/sys/i386/linux/linux_proto.h#23 edit
.. //depot/projects/linuxolator/src/sys/i386/linux/linux_syscall.h#22 edit
.. //depot/projects/linuxolator/src/sys/i386/linux/linux_sysent.c#22 edit
.. //depot/projects/linuxolator/src/sys/i386/linux/syscalls.master#22 edit
Differences ...
==== //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_proto.h#24 (text+ko) ====
@@ -2,7 +2,7 @@
  * System call prototypes.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.31 2007/03/30 00:08:21 jkim Exp $
+ * $FreeBSD$
  * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.28 2007/03/30 00:06:21 jkim Exp 
  */
 
@@ -831,6 +831,7 @@
 };
 struct linux_statfs64_args {
 	char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
+	char sz_l_[PADL_(size_t)]; size_t sz; char sz_r_[PADR_(size_t)];
 	char buf_l_[PADL_(struct l_statfs64_buf *)]; struct l_statfs64_buf * buf; char buf_r_[PADR_(struct l_statfs64_buf *)];
 };
 struct linux_fstatfs64_args {
==== //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_syscall.h#24 (text+ko) ====
@@ -2,7 +2,7 @@
  * System call numbers.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.31 2007/03/30 00:08:21 jkim Exp $
+ * $FreeBSD$
  * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.28 2007/03/30 00:06:21 jkim Exp 
  */
 
==== //depot/projects/linuxolator/src/sys/amd64/linux32/linux32_sysent.c#23 (text+ko) ====
@@ -2,7 +2,7 @@
  * System call switch table.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.31 2007/03/30 00:08:21 jkim Exp $
+ * $FreeBSD$
  * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.28 2007/03/30 00:06:21 jkim Exp 
  */
 
==== //depot/projects/linuxolator/src/sys/amd64/linux32/syscalls.master#24 (text+ko) ====
@@ -437,7 +437,7 @@
 266	AUE_NULL	STD	{ int linux_clock_getres(clockid_t which, struct l_timespec *tp); }
 267	AUE_NULL	STD	{ int linux_clock_nanosleep(clockid_t which, int flags, \
 					struct l_timespec *rqtp, struct l_timespec *rmtp); }
-268	AUE_STATFS	STD	{ int linux_statfs64(char *path, struct l_statfs64_buf *buf); }
+268	AUE_STATFS	STD	{ int linux_statfs64(char *path, size_t sz, struct l_statfs64_buf *buf); }
 269	AUE_FSTATFS	STD	{ int linux_fstatfs64(void); }
 270	AUE_NULL	STD	{ int linux_tgkill(int tgid, int pid, int sig); }
 271	AUE_UTIMES	STD	{ int linux_utimes(char *fname, \
==== //depot/projects/linuxolator/src/sys/compat/linux/linux_stats.c#11 (text+ko) ====
@@ -385,7 +385,7 @@
 
 #ifdef DEBUG
 	if (ldebug(statfs))
-		printf(ARGS(statfs, "%s, *"), path);
+		printf(ARGS(statfs, "%s, *"), path, args->sz);
 #endif
 	error = kern_statfs(td, path, UIO_SYSSPACE, &bsd_statfs);
 	LFREEPATH(path);
@@ -419,11 +419,14 @@
 	char *path;
 	int error;
 
+	if (args->sz != sizeof(struct l_statfs64))
+		return (EINVAL);
+
 	LCONVPATHEXIST(td, args->path, &path);
 
 #ifdef DEBUG
 	if (ldebug(statfs64))
-		printf(ARGS(statfs64, "%s, *"), path);
+		printf(ARGS(statfs64, "%s, %d, *"), path, args->sz);
 #endif
 	error = kern_statfs(td, path, UIO_SYSSPACE, &bsd_statfs);
 	LFREEPATH(path);
==== //depot/projects/linuxolator/src/sys/i386/linux/linux_proto.h#23 (text+ko) ====
@@ -2,8 +2,8 @@
  * System call prototypes.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/i386/linux/linux_proto.h,v 1.92 2007/03/29 02:11:46 julian Exp $
- * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.86 2007/02/15 00:54:40 jkim Exp 
+ * $FreeBSD$
+ * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.87 2007/03/29 02:11:46 julian Exp 
  */
 
 #ifndef _LINUX_SYSPROTO_H_
@@ -836,6 +836,7 @@
 };
 struct linux_statfs64_args {
 	char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)];
+	char sz_l_[PADL_(size_t)]; size_t sz; char sz_r_[PADR_(size_t)];
 	char buf_l_[PADL_(struct l_statfs64_buf *)]; struct l_statfs64_buf * buf; char buf_r_[PADR_(struct l_statfs64_buf *)];
 };
 struct linux_fstatfs64_args {
==== //depot/projects/linuxolator/src/sys/i386/linux/linux_syscall.h#22 (text+ko) ====
@@ -2,8 +2,8 @@
  * System call numbers.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/i386/linux/linux_syscall.h,v 1.85 2007/03/29 02:11:46 julian Exp $
- * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.86 2007/02/15 00:54:40 jkim Exp 
+ * $FreeBSD$
+ * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.87 2007/03/29 02:11:46 julian Exp 
  */
 
 #define	LINUX_SYS_exit	1
==== //depot/projects/linuxolator/src/sys/i386/linux/linux_sysent.c#22 (text+ko) ====
@@ -2,8 +2,8 @@
  * System call switch table.
  *
  * DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/i386/linux/linux_sysent.c,v 1.92 2007/03/29 02:11:46 julian Exp $
- * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.86 2007/02/15 00:54:40 jkim Exp 
+ * $FreeBSD$
+ * created from FreeBSD: src/sys/i386/linux/syscalls.master,v 1.87 2007/03/29 02:11:46 julian Exp 
  */
 
 #include <bsm/audit_kevents.h>
==== //depot/projects/linuxolator/src/sys/i386/linux/syscalls.master#22 (text+ko) ====
@@ -441,7 +441,7 @@
 266	AUE_NULL	STD	{ int linux_clock_getres(clockid_t which, struct l_timespec *tp); }
 267	AUE_NULL	STD	{ int linux_clock_nanosleep(clockid_t which, int flags, \
 					struct l_timespec *rqtp, struct l_timespec *rmtp); }
-268	AUE_STATFS	STD	{ int linux_statfs64(char *path, struct l_statfs64_buf *buf); }
+268	AUE_STATFS	STD	{ int linux_statfs64(char *path, size_t sz, struct l_statfs64_buf *buf); }
 269	AUE_FSTATFS	STD	{ int linux_fstatfs64(void); }
 270	AUE_NULL	STD	{ int linux_tgkill(int tgid, int pid, int sig); }
 271	AUE_UTIMES	STD	{ int linux_utimes(char *fname, \
    
    
More information about the p4-projects
mailing list