summaryrefslogtreecommitdiffstats
path: root/sys/miscfs
diff options
context:
space:
mode:
Diffstat (limited to 'sys/miscfs')
-rw-r--r--sys/miscfs/devfs/devfs_tree.c14
-rw-r--r--sys/miscfs/devfs/devfs_vfsops.c11
2 files changed, 23 insertions, 2 deletions
diff --git a/sys/miscfs/devfs/devfs_tree.c b/sys/miscfs/devfs/devfs_tree.c
index 746305e..599d8e1 100644
--- a/sys/miscfs/devfs/devfs_tree.c
+++ b/sys/miscfs/devfs/devfs_tree.c
@@ -2,7 +2,7 @@
/*
* Written by Julian Elischer (julian@DIALix.oz.au)
*
- * $Header: /u1/ncvs/src/sys/miscfs/devfs/devfs_tree.c,v 1.10 1995/12/08 11:17:33 julian Exp $
+ * $Header: /home/ncvs/src/sys/miscfs/devfs/devfs_tree.c,v 1.11 1995/12/09 09:11:01 julian Exp $
*/
#include "param.h"
@@ -732,10 +732,16 @@ DBPRINT((" vntodn "));
Debugger("bad-tag ");
return(EINVAL);
}
+#if 0
+ /*
+ * XXX: This is actually a "normal" case when vclean calls us without
+ * XXX: incrementing the reference count first.
+ */
if(vn_p->v_usecount == 0)
{
printf("No references! ");
}
+#endif
if((vn_p->v_type == VBAD) || (vn_p->v_type == VNON))
{
printf("bad-type2 ");
@@ -762,12 +768,18 @@ DBPRINT(("dntovn "));
{
if(vn_p->v_id != dnp->vn_id)
{
+#if 0
+ /* XXX: This is `normal'... */
printf("bad-id ");
+#endif
goto skip;
}
if(vn_p->v_tag != VT_DEVFS)
{
+#if 0
+ /* XXX: This is `normal'... */
printf("bad-tag ");
+#endif
goto skip;
}
if(vn_p->v_op != *(dnp->ops))
diff --git a/sys/miscfs/devfs/devfs_vfsops.c b/sys/miscfs/devfs/devfs_vfsops.c
index 2da4567..f520cd3 100644
--- a/sys/miscfs/devfs/devfs_vfsops.c
+++ b/sys/miscfs/devfs/devfs_vfsops.c
@@ -1,7 +1,7 @@
/*
* Written by Julian Elischer (julian@DIALix.oz.au)
*
- * $Header: /home/ncvs/src/sys/miscfs/devfs/devfs_vfsops.c,v 1.7 1995/12/14 09:52:55 phk Exp $
+ * $Header: /home/ncvs/src/sys/miscfs/devfs/devfs_vfsops.c,v 1.8 1995/12/14 19:04:08 bde Exp $
*
*
*/
@@ -25,6 +25,15 @@ static int mountdevfs( struct mount *mp, struct proc *p);
static int
devfs_init(void)
{
+ /*
+ * fill in the missing members on the "hidden" mount
+ */
+ dev_root->dnp->dvm->mount->mnt_op = vfssw[MOUNT_DEVFS];
+ dev_root->dnp->dvm->mount->mnt_vfc = vfsconf[MOUNT_DEVFS];
+
+ /* Mark a reference for the "invisible" blueprint mount */
+ dev_root->dnp->dvm->mount->mnt_vfc->vfc_refcount++;
+
printf("devfs ready to run\n");
return 0; /*XXX*/
}
OpenPOWER on IntegriCloud