PATCH: Arla CVS Current on OpenBSD 4.4 (and 4.3)

Bo Brantén bosse at acc.umu.se
Thu Nov 6 13:46:40 CET 2008


Hello,

some people had problem applying my earlier patch because of my mail
program translated tabs to spaces so I try resending it this way hopefully
it works now.

Bo Branten
-------------- next part --------------
diff -uprN arla-cvs/nnpfs/bsd/nnpfs/nnpfs_node.h arla-cvs-new/nnpfs/bsd/nnpfs/nnpfs_node.h
--- arla-cvs/nnpfs/bsd/nnpfs/nnpfs_node.h	2007-03-06 17:01:56.000000000 +0100
+++ arla-cvs-new/nnpfs/bsd/nnpfs/nnpfs_node.h	2008-10-30 20:11:43.000000000 +0100
@@ -113,7 +113,7 @@ typedef struct lock nnpfs_vnode_lock;
 
 #else
 
-#if defined(__FreeBSD__) && __FreeBSD_version >= 600000
+#if (defined(__FreeBSD__) && __FreeBSD_version >= 600000 || defined(__OpenBSD__) && OpenBSD >= 200805)
 #define nnpfs_vrecycle(vp, foo, bar) vrecycle(vp, bar)
 #else
 #define nnpfs_vrecycle(vp, foo, bar) vrecycle(vp, foo, bar)
diff -uprN arla-cvs/nnpfs/bsd/nnpfs/nnpfs_vfsops-bsd.h arla-cvs-new/nnpfs/bsd/nnpfs/nnpfs_vfsops-bsd.h
--- arla-cvs/nnpfs/bsd/nnpfs/nnpfs_vfsops-bsd.h	2008-02-26 22:59:18.000000000 +0100
+++ arla-cvs-new/nnpfs/bsd/nnpfs/nnpfs_vfsops-bsd.h	2008-10-30 20:13:19.000000000 +0100
@@ -79,7 +79,7 @@ int
 nnpfs_root(struct mount *mp, struct vnode **vpp);
 
 int
-#ifdef HAVE_VFS_QUOTACTL_CADDR
+#if (defined(HAVE_VFS_QUOTACTL_CADDR) || defined (__OpenBSD__) && OpenBSD >= 200805)
 nnpfs_quotactl(struct mount *mp, int cmd, uid_t uid, caddr_t arg, d_thread_t *p);
 #else
 nnpfs_quotactl(struct mount *mp, int cmd, uid_t uid, void *arg, d_thread_t *p);
diff -uprN arla-cvs/nnpfs/bsd/nnpfs_blocks.c arla-cvs-new/nnpfs/bsd/nnpfs_blocks.c
--- arla-cvs/nnpfs/bsd/nnpfs_blocks.c	2008-02-27 23:16:21.000000000 +0100
+++ arla-cvs-new/nnpfs/bsd/nnpfs_blocks.c	2008-10-23 18:44:04.000000000 +0200
@@ -469,8 +469,8 @@ open_file(struct vnode *cachedir, char *
 
 #ifdef __FreeBSD__
 	    (void)vn_start_write(cachedir, &mp, V_WAIT); /* V_NOWAIT? */
-#endif
 	    VOP_LEASE(cachedir, p, cred, LEASE_WRITE);
+#endif
 	    error = VOP_CREATE(cachedir, vpp, &nd.ni_cnd, &vat);
 
 #ifdef __FreeBSD__
diff -uprN arla-cvs/nnpfs/bsd/nnpfs_common-bsd.c arla-cvs-new/nnpfs/bsd/nnpfs_common-bsd.c
--- arla-cvs/nnpfs/bsd/nnpfs_common-bsd.c	2008-02-26 22:59:06.000000000 +0100
+++ arla-cvs-new/nnpfs/bsd/nnpfs_common-bsd.c	2008-11-01 15:14:25.000000000 +0100
@@ -58,7 +58,11 @@ nnpfs_alloc(u_int size, nnpfs_malloc_typ
     NNPFSDEB(XDEBMEM, ("nnpfs_alloc: nnpfs_allocs - nnpfs_frees %d\n", 
 		     nnpfs_allocs - nnpfs_frees));
 
+#if (defined(__OpenBSD__) && OpenBSD >= 200811)
+    ret = malloc(size, type, M_WAITOK);
+#else
     MALLOC(ret, void *, size, type, M_WAITOK);
+#endif
     return ret;
 }
 
@@ -66,7 +70,11 @@ void
 nnpfs_free(void *ptr, u_int size, nnpfs_malloc_type type)
 {
     nnpfs_frees++;
+#if (defined(__OpenBSD__) && OpenBSD >= 200811)
+    free(ptr, type);
+#else
     FREE(ptr, type);
+#endif
 }
 
 #endif /* NNPFS_DEBUG */
diff -uprN arla-cvs/nnpfs/bsd/nnpfs_vfsops-bsd.c arla-cvs-new/nnpfs/bsd/nnpfs_vfsops-bsd.c
--- arla-cvs/nnpfs/bsd/nnpfs_vfsops-bsd.c	2008-02-26 22:59:11.000000000 +0100
+++ arla-cvs-new/nnpfs/bsd/nnpfs_vfsops-bsd.c	2008-10-30 20:14:39.000000000 +0100
@@ -84,7 +84,7 @@ nnpfs_root(struct mount *mp, struct vnod
 }
 
 int
-#ifdef HAVE_VFS_QUOTACTL_CADDR
+#if (defined(HAVE_VFS_QUOTACTL_CADDR) || defined (__OpenBSD__) && OpenBSD >= 200805)
 nnpfs_quotactl(struct mount *mp, int cmd, uid_t uid, caddr_t arg, d_thread_t *p)
 #else
 nnpfs_quotactl(struct mount *mp, int cmd, uid_t uid, void *arg, d_thread_t *p)
diff -uprN arla-cvs/nnpfs/bsd/nnpfs_vfsops-openbsd.c arla-cvs-new/nnpfs/bsd/nnpfs_vfsops-openbsd.c
--- arla-cvs/nnpfs/bsd/nnpfs_vfsops-openbsd.c	2005-10-28 16:33:39.000000000 +0200
+++ arla-cvs-new/nnpfs/bsd/nnpfs_vfsops-openbsd.c	2008-11-01 15:10:44.000000000 +0100
@@ -112,7 +112,9 @@ static struct vfsconf nnpfs_vfc = {
     0,
     0,
     0,
+#if (OpenBSD < 200811)
     NULL,
+#endif
     NULL
 };
 
diff -uprN arla-cvs/nnpfs/bsd/nnpfs_vnodeops-bsd.c arla-cvs-new/nnpfs/bsd/nnpfs_vnodeops-bsd.c
--- arla-cvs/nnpfs/bsd/nnpfs_vnodeops-bsd.c	2008-02-27 23:14:34.000000000 +0100
+++ arla-cvs-new/nnpfs/bsd/nnpfs_vnodeops-bsd.c	2008-11-01 15:16:57.000000000 +0100
@@ -596,8 +596,12 @@ nnpfs_readdir(struct vop_readdir_args * 
 	    ncookies++;
 	}
 
+#if (defined(__OpenBSD__) && OpenBSD >= 200811)
+	cookies = malloc(ncookies * sizeof(nnpfs_cookie_t), M_TEMP, M_WAITOK);
+#else
 	MALLOC(cookies, nnpfs_cookie_t *, ncookies * sizeof(nnpfs_cookie_t),
 	       M_TEMP, M_WAITOK);
+#endif
 	for (dp = dp_start, cookiep = cookies;
 	     dp < dp_end;
 	     dp = (const struct dirent *)((const char *) dp + dp->d_reclen)) {
@@ -902,8 +906,12 @@ nnpfs_lock(struct vop_lock_args * ap)
     ret = lockmgr(l, flags, &vp->v_interlock, NNPFS_AP_PROC(ap));
 #endif
 #else
+#if (defined(__OpenBSD__) && OpenBSD >= 200805)
+    ret = lockmgr(l, flags, NULL);
+#else
     ret = lockmgr(l, flags, &vp->v_interlock);
 #endif
+#endif
 #else
     ret = debuglockmgr(l, flags, &vp->v_interlock, NNPFS_AP_PROC(ap),
 		       "nnpfs_lock", ap->a_vp->filename, ap->a_vp->line);
@@ -948,8 +956,12 @@ nnpfs_unlock(struct vop_unlock_args * ap
     ret = lockmgr (l, flags | LK_RELEASE, &vp->v_interlock, NNPFS_AP_PROC(ap));
 #endif
 #else
+#if (defined(__OpenBSD__) && OpenBSD >= 200805)
+    ret = lockmgr (l, flags | LK_RELEASE, NULL);
+#else
     ret = lockmgr (l, flags | LK_RELEASE, &vp->v_interlock);
 #endif
+#endif
 #else
     ret = debuglockmgr (l, flags | LK_RELEASE, &vp->v_interlock, NNPFS_AP_PROC(ap),
 			"nnpfs_lock", ap->a_vp->filename, ap->a_vp->line);
diff -uprN arla-cvs/nnpfs/bsd/nnpfs_vnodeops-common.c arla-cvs-new/nnpfs/bsd/nnpfs_vnodeops-common.c
--- arla-cvs/nnpfs/bsd/nnpfs_vnodeops-common.c	2008-02-26 22:59:13.000000000 +0100
+++ arla-cvs-new/nnpfs/bsd/nnpfs_vnodeops-common.c	2008-10-23 19:54:31.000000000 +0200
@@ -1440,9 +1440,7 @@ nnpfs_readlink_common(struct vnode *vp, 
     int error = 0;
     nnpfs_cred cred;
     struct nnpfs *nnpfsp = NNPFS_FROM_VNODE(vp);
-#ifdef HAVE_THREE_ARGUMENT_VOP_UNLOCK
     d_thread_t *proc = nnpfs_vfs_context_proc(ctx);
-#endif
 
     NNPFSDEB(XDEBVNOPS, ("nnpfs_readlink\n"));
 


More information about the Arla-drinkers mailing list