Apply by doing
cd /usr/src/sys/miscfs/union
patch -p0 < unionfs.patch
And then rebuild your kernel.
Index: union_vnops.c
===================================================================
RCS file: /cvs/src/sys/miscfs/union/union_vnops.c,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- union_vnops.c 1997/11/06 05:58:54 1.9
+++ union_vnops.c 1998/07/13 02:52:01 1.10
@@ -1,4 +1,4 @@
-/* $OpenBSD: union_vnops.c,v 1.9 1997/11/06 05:58:54 csapuntz Exp $ */
+/* $OpenBSD: union_vnops.c,v 1.10 1998/07/13 02:52:01 csapuntz Exp $ */
/* $NetBSD: union_vnops.c,v 1.30.4.1 1996/05/25 22:10:14 jtc Exp $ */
/*
@@ -1591,8 +1591,10 @@
union_diruncache(un);
+ VOP_UNLOCK(ap->a_vp, 0, ap->a_p);
+
if ((un->un_flags & UN_CACHED) == 0)
- vgone(ap->a_vp);
+ vrecycle(ap->a_vp, (struct simplelock *)0, ap->a_p);
return (0);
}