Fri Jan 21 12:24:25 2011 UTC ()
fix kobj_open_file_vnode()

patch from haad


(pooka)
diff -r1.1 -r1.2 src/external/cddl/osnet/sys/kern/kobj.c
diff -r1.7 -r1.8 src/external/cddl/osnet/sys/sys/vnode.h

cvs diff -r1.1 -r1.2 src/external/cddl/osnet/sys/kern/kobj.c (expand / switch to context diff)
--- src/external/cddl/osnet/sys/kern/kobj.c 2009/08/07 20:57:57 1.1
+++ src/external/cddl/osnet/sys/kern/kobj.c 2011/01/21 12:24:24 1.2
@@ -1,4 +1,4 @@
-/*	$NetBSD: kobj.c,v 1.1 2009/08/07 20:57:57 haad Exp $	*/
+/*	$NetBSD: kobj.c,v 1.2 2011/01/21 12:24:24 pooka Exp $	*/
 
 /*-
  * Copyright (c) 2009 The NetBSD Foundation, Inc.
@@ -57,7 +57,7 @@
 
 #include <sys/cdefs.h>
 /* __FBSDID("$FreeBSD: src/sys/compat/opensolaris/kern/opensolaris_kobj.c,v 1.4 2007/05/31 11:51:49 kib Exp $"); */
-__KERNEL_RCSID(0, "$NetBSD: kobj.c,v 1.1 2009/08/07 20:57:57 haad Exp $");
+__KERNEL_RCSID(0, "$NetBSD: kobj.c,v 1.2 2011/01/21 12:24:24 pooka Exp $");
 
 #include <sys/types.h>
 #include <sys/systm.h>
@@ -97,7 +97,7 @@
 {
 	vnode_t *vp;
 
-	if (vn_open(file, UIO_SYSSPACE, 0, 0, &vp, CRCREAT, 0) != 0) {
+	if (vn_open(file, UIO_SYSSPACE, FCREAT, 0, &vp, CRCREAT, 0) != 0) {
 		return NULL;
 	}
 	return vp;

cvs diff -r1.7 -r1.8 src/external/cddl/osnet/sys/sys/vnode.h (expand / switch to context diff)
--- src/external/cddl/osnet/sys/sys/vnode.h 2010/12/14 01:21:02 1.7
+++ src/external/cddl/osnet/sys/sys/vnode.h 2011/01/21 12:24:24 1.8
@@ -1,5 +1,5 @@
 
-/*	$NetBSD: vnode.h,v 1.7 2010/12/14 01:21:02 haad Exp $	*/
+/*	$NetBSD: vnode.h,v 1.8 2011/01/21 12:24:24 pooka Exp $	*/
 
 /*
  * CDDL HEADER START
@@ -536,7 +536,7 @@
 	int error;
 
 	ASSERT(seg == UIO_SYSSPACE);
-	ASSERT(filemode == (FWRITE | FCREAT | FTRUNC | FOFFMAX));
+	ASSERT((filemode & (FWRITE | FCREAT | FTRUNC | FOFFMAX)) != 0);
 	ASSERT(crwhy == CRCREAT);
 	ASSERT(umask == 0);