Module Name:    src
Committed By:   matt
Date:           Sun Sep 13 06:19:43 UTC 2009

Modified Files:
        src/sys/compat/netbsd32 [matt-nb5-mips64]: netbsd32_fs.c
            netbsd32_netbsd.c

Log Message:
Move netbsd32___mount50 from netbsd32_netbsd.c to netbsd32_fs.c


To generate a diff of this commit:
cvs rdiff -u -r1.55 -r1.55.14.1 src/sys/compat/netbsd32/netbsd32_fs.c
cvs rdiff -u -r1.145.4.2.4.1 -r1.145.4.2.4.2 \
    src/sys/compat/netbsd32/netbsd32_netbsd.c

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

Modified files:

Index: src/sys/compat/netbsd32/netbsd32_fs.c
diff -u src/sys/compat/netbsd32/netbsd32_fs.c:1.55 src/sys/compat/netbsd32/netbsd32_fs.c:1.55.14.1
--- src/sys/compat/netbsd32/netbsd32_fs.c:1.55	Tue Jun 24 11:18:15 2008
+++ src/sys/compat/netbsd32/netbsd32_fs.c	Sun Sep 13 06:19:43 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: netbsd32_fs.c,v 1.55 2008/06/24 11:18:15 ad Exp $	*/
+/*	$NetBSD: netbsd32_fs.c,v 1.55.14.1 2009/09/13 06:19:43 matt Exp $	*/
 
 /*
  * Copyright (c) 1998, 2001 Matthew R. Green
@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: netbsd32_fs.c,v 1.55 2008/06/24 11:18:15 ad Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_fs.c,v 1.55.14.1 2009/09/13 06:19:43 matt Exp $");
 
 #include <sys/param.h>
 #include <sys/systm.h>
@@ -50,6 +50,9 @@
 #include <sys/kauth.h>
 #include <sys/vfs_syscalls.h>
 
+#include <fs/cd9660/cd9660_mount.h>
+#include <ufs/ufs/ufsmount.h>
+
 #include <compat/netbsd32/netbsd32.h>
 #include <compat/netbsd32/netbsd32_syscallargs.h>
 #include <compat/netbsd32/netbsd32_conv.h>
@@ -754,3 +757,132 @@
 	free(path, M_TEMP);
 	return error;
 }
+
+int
+netbsd32___mount50(struct lwp *l, const struct netbsd32___mount50_args *uap,
+	register_t *retval) 
+{
+	/* {
+		syscallarg(netbsd32_charp) type;
+		syscallarg(netbsd32_charp) path;
+		syscallarg(int) flags;
+		syscallarg(netbsd32_voidp) data;
+		syscallarg(netbsd32_size_t) data_len;
+	} */
+	char mtype[MNAMELEN];
+	union {
+		struct netbsd32_ufs_args ufs_args;
+		struct netbsd32_mfs_args mfs_args;
+		struct netbsd32_iso_args iso_args;
+	} fs_args32;
+	union {
+		struct ufs_args ufs_args;
+		struct mfs_args mfs_args;
+		struct iso_args iso_args;
+	} fs_args;
+	const char *type = SCARG_P32(uap, type);
+	const char *path = SCARG_P32(uap, path);
+	int flags = SCARG(uap, flags);
+	void *data = SCARG_P32(uap, data);
+	size_t data_len = SCARG(uap, data_len);
+	enum uio_seg data_seg;
+	size_t len;
+	int error;
+ 
+	error = copyinstr(type, mtype, sizeof(mtype), &len);
+	if (error)
+		return error;
+	if (strcmp(mtype, MOUNT_MFS) == 0) {
+		if (data_len != sizeof(fs_args32.mfs_args))
+			return EINVAL;
+		if ((flags & MNT_GETARGS) == 0) {
+			error = copyin(data, &fs_args32.mfs_args, 
+			    sizeof(fs_args32.mfs_args));
+			if (error)
+				return error;
+			fs_args.mfs_args.fspec =
+			    NETBSD32PTR64(fs_args32.mfs_args.fspec);
+			memset(&fs_args.mfs_args._pad1, 0,
+			    sizeof(fs_args.mfs_args._pad1));
+			fs_args.mfs_args.base =
+			    NETBSD32PTR64(fs_args32.mfs_args.base);
+			fs_args.mfs_args.size = fs_args32.mfs_args.size;
+		}
+		data_seg = UIO_SYSSPACE;
+		data = &fs_args.mfs_args;
+		data_len = sizeof(fs_args.mfs_args);
+	} else if (strcmp(mtype, MOUNT_UFS) == 0) {
+		if (data_len > sizeof(fs_args32.ufs_args))
+			return EINVAL;
+		if ((flags & MNT_GETARGS) == 0) {
+			error = copyin(data, &fs_args32.ufs_args, 
+			    sizeof(fs_args32.ufs_args));
+			if (error)
+				return error;
+			fs_args.ufs_args.fspec =
+			    NETBSD32PTR64(fs_args32.ufs_args.fspec);
+		}
+		data_seg = UIO_SYSSPACE;
+		data = &fs_args.ufs_args;
+		data_len = sizeof(fs_args.ufs_args);
+	} else if (strcmp(mtype, MOUNT_CD9660) == 0) {
+		if (data_len != sizeof(fs_args32.iso_args))
+			return EINVAL;
+		if ((flags & MNT_GETARGS) == 0) {
+			error = copyin(data, &fs_args32.iso_args, 
+			    sizeof(fs_args32.iso_args));
+			if (error)
+				return error;
+			fs_args.iso_args.fspec =
+			    NETBSD32PTR64(fs_args32.iso_args.fspec);
+			memset(&fs_args.iso_args._pad1, 0,
+			    sizeof(fs_args.iso_args._pad1));
+			fs_args.iso_args.flags = fs_args32.iso_args.flags;
+		}
+		data_seg = UIO_SYSSPACE;
+		data = &fs_args.iso_args;
+		data_len = sizeof(fs_args.iso_args);
+	} else {
+		data_seg = UIO_USERSPACE;
+	}
+	error = do_sys_mount(l, NULL, type, path, flags, data, data_seg,
+	    data_len, retval);
+	if (error) {
+		printf("do_sys_mount(%s): %p, %p, %#x, %p, %d, %zu, %p: failed: error %d\n", mtype, type, path, flags, data, data_seg, data_len, retval, error);
+		return error;
+	}
+	if (flags & MNT_GETARGS) {
+		data_len = *retval;
+		if (strcmp(mtype, MOUNT_MFS) == 0) {
+			if (data_len != sizeof(fs_args.mfs_args))
+				return EINVAL;
+			NETBSD32PTR32(fs_args32.mfs_args.fspec,
+			    fs_args.mfs_args.fspec);
+			memset(&fs_args32.mfs_args._pad1, 0,
+			    sizeof(fs_args32.mfs_args._pad1));
+			NETBSD32PTR32(fs_args32.mfs_args.base,
+			    fs_args.mfs_args.base);
+			fs_args32.mfs_args.size = fs_args.mfs_args.size;
+			error = copyout(&fs_args32.mfs_args, data,
+				    sizeof(fs_args32.mfs_args));
+		} else if (strcmp(mtype, MOUNT_UFS) == 0) {
+			if (data_len != sizeof(fs_args.ufs_args))
+				return EINVAL;
+			NETBSD32PTR32(fs_args32.ufs_args.fspec,
+			    fs_args.ufs_args.fspec);
+			error = copyout(&fs_args32.ufs_args, data, 
+			    sizeof(fs_args32.ufs_args));
+		} else if (strcmp(mtype, MOUNT_CD9660) == 0) {
+			if (data_len != sizeof(fs_args.iso_args))
+				return EINVAL;
+			NETBSD32PTR32(fs_args32.iso_args.fspec,
+			    fs_args.iso_args.fspec);
+			memset(&fs_args32.iso_args._pad1, 0,
+			    sizeof(fs_args32.iso_args._pad1));
+			fs_args32.iso_args.flags = fs_args.iso_args.flags;
+			error = copyout(&fs_args32.iso_args, data,
+				    sizeof(fs_args32.iso_args));
+		}
+	}
+	return error;
+}

Index: src/sys/compat/netbsd32/netbsd32_netbsd.c
diff -u src/sys/compat/netbsd32/netbsd32_netbsd.c:1.145.4.2.4.1 src/sys/compat/netbsd32/netbsd32_netbsd.c:1.145.4.2.4.2
--- src/sys/compat/netbsd32/netbsd32_netbsd.c:1.145.4.2.4.1	Sat Sep 12 18:02:32 2009
+++ src/sys/compat/netbsd32/netbsd32_netbsd.c	Sun Sep 13 06:19:43 2009
@@ -1,4 +1,4 @@
-/*	$NetBSD: netbsd32_netbsd.c,v 1.145.4.2.4.1 2009/09/12 18:02:32 matt Exp $	*/
+/*	$NetBSD: netbsd32_netbsd.c,v 1.145.4.2.4.2 2009/09/13 06:19:43 matt Exp $	*/
 
 /*
  * Copyright (c) 1998, 2001, 2008 Matthew R. Green
@@ -27,7 +27,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: netbsd32_netbsd.c,v 1.145.4.2.4.1 2009/09/12 18:02:32 matt Exp $");
+__KERNEL_RCSID(0, "$NetBSD: netbsd32_netbsd.c,v 1.145.4.2.4.2 2009/09/13 06:19:43 matt Exp $");
 
 #if defined(_KERNEL_OPT)
 #include "opt_ddb.h"
@@ -87,9 +87,6 @@
 
 #include <net/if.h>
 
-#include <fs/cd9660/cd9660_mount.h>
-#include <ufs/ufs/ufsmount.h>
-
 #include <compat/netbsd32/netbsd32.h>
 #include <compat/netbsd32/netbsd32_exec.h>
 #include <compat/netbsd32/netbsd32_syscall.h>
@@ -407,135 +404,6 @@
 }
 
 int
-netbsd32___mount50(struct lwp *l, const struct netbsd32___mount50_args *uap,
-	register_t *retval) 
-{
-	/* {
-		syscallarg(netbsd32_charp) type;
-		syscallarg(netbsd32_charp) path;
-		syscallarg(int) flags;
-		syscallarg(netbsd32_voidp) data;
-		syscallarg(netbsd32_size_t) data_len;
-	} */
-	char mtype[MNAMELEN];
-	union {
-		struct netbsd32_ufs_args ufs_args;
-		struct netbsd32_mfs_args mfs_args;
-		struct netbsd32_iso_args iso_args;
-	} fs_args32;
-	union {
-		struct ufs_args ufs_args;
-		struct mfs_args mfs_args;
-		struct iso_args iso_args;
-	} fs_args;
-	const char *type = SCARG_P32(uap, type);
-	const char *path = SCARG_P32(uap, path);
-	int flags = SCARG(uap, flags);
-	void *data = SCARG_P32(uap, data);
-	size_t data_len = SCARG(uap, data_len);
-	enum uio_seg data_seg;
-	size_t len;
-	int error;
- 
-	error = copyinstr(type, mtype, sizeof(mtype), &len);
-	if (error)
-		return error;
-	if (strcmp(mtype, MOUNT_MFS) == 0) {
-		if (data_len != sizeof(fs_args32.mfs_args))
-			return EINVAL;
-		if ((flags & MNT_GETARGS) == 0) {
-			error = copyin(data, &fs_args32.mfs_args, 
-			    sizeof(fs_args32.mfs_args));
-			if (error)
-				return error;
-			fs_args.mfs_args.fspec =
-			    NETBSD32PTR64(fs_args32.mfs_args.fspec);
-			memset(&fs_args.mfs_args._pad1, 0,
-			    sizeof(fs_args.mfs_args._pad1));
-			fs_args.mfs_args.base =
-			    NETBSD32PTR64(fs_args32.mfs_args.base);
-			fs_args.mfs_args.size = fs_args32.mfs_args.size;
-		}
-		data_seg = UIO_SYSSPACE;
-		data = &fs_args.mfs_args;
-		data_len = sizeof(fs_args.mfs_args);
-	} else if (strcmp(mtype, MOUNT_UFS) == 0) {
-		if (data_len > sizeof(fs_args32.ufs_args))
-			return EINVAL;
-		if ((flags & MNT_GETARGS) == 0) {
-			error = copyin(data, &fs_args32.ufs_args, 
-			    sizeof(fs_args32.ufs_args));
-			if (error)
-				return error;
-			fs_args.ufs_args.fspec =
-			    NETBSD32PTR64(fs_args32.ufs_args.fspec);
-		}
-		data_seg = UIO_SYSSPACE;
-		data = &fs_args.ufs_args;
-		data_len = sizeof(fs_args.ufs_args);
-	} else if (strcmp(mtype, MOUNT_CD9660) == 0) {
-		if (data_len != sizeof(fs_args32.iso_args))
-			return EINVAL;
-		if ((flags & MNT_GETARGS) == 0) {
-			error = copyin(data, &fs_args32.iso_args, 
-			    sizeof(fs_args32.iso_args));
-			if (error)
-				return error;
-			fs_args.iso_args.fspec =
-			    NETBSD32PTR64(fs_args32.iso_args.fspec);
-			memset(&fs_args.iso_args._pad1, 0,
-			    sizeof(fs_args.iso_args._pad1));
-			fs_args.iso_args.flags = fs_args32.iso_args.flags;
-		}
-		data_seg = UIO_SYSSPACE;
-		data = &fs_args.iso_args;
-		data_len = sizeof(fs_args.iso_args);
-	} else {
-		data_seg = UIO_USERSPACE;
-	}
-	error = do_sys_mount(l, NULL, type, path, flags, data, data_seg,
-	    data_len, retval);
-	if (error) {
-		printf("do_sys_mount(%s): %p, %p, %#x, %p, %d, %zu, %p: failed: error %d\n", mtype, type, path, flags, data, data_seg, data_len, retval, error);
-		return error;
-	}
-	if (flags & MNT_GETARGS) {
-		data_len = *retval;
-		if (strcmp(mtype, MOUNT_MFS) == 0) {
-			if (data_len != sizeof(fs_args.mfs_args))
-				return EINVAL;
-			NETBSD32PTR32(fs_args32.mfs_args.fspec,
-			    fs_args.mfs_args.fspec);
-			memset(&fs_args32.mfs_args._pad1, 0,
-			    sizeof(fs_args32.mfs_args._pad1));
-			NETBSD32PTR32(fs_args32.mfs_args.base,
-			    fs_args.mfs_args.base);
-			fs_args32.mfs_args.size = fs_args.mfs_args.size;
-			error = copyout(&fs_args32.mfs_args, data,
-				    sizeof(fs_args32.mfs_args));
-		} else if (strcmp(mtype, MOUNT_UFS) == 0) {
-			if (data_len != sizeof(fs_args.ufs_args))
-				return EINVAL;
-			NETBSD32PTR32(fs_args32.ufs_args.fspec,
-			    fs_args.ufs_args.fspec);
-			error = copyout(&fs_args32.ufs_args, data, 
-			    sizeof(fs_args32.ufs_args));
-		} else if (strcmp(mtype, MOUNT_CD9660) == 0) {
-			if (data_len != sizeof(fs_args.iso_args))
-				return EINVAL;
-			NETBSD32PTR32(fs_args32.iso_args.fspec,
-			    fs_args.iso_args.fspec);
-			memset(&fs_args32.iso_args._pad1, 0,
-			    sizeof(fs_args32.iso_args._pad1));
-			fs_args32.iso_args.flags = fs_args.iso_args.flags;
-			error = copyout(&fs_args32.iso_args, data,
-				    sizeof(fs_args32.iso_args));
-		}
-	}
-	return error;
-}
-
-int
 netbsd32_unmount(struct lwp *l, const struct netbsd32_unmount_args *uap, register_t *retval)
 {
 	/* {

Reply via email to