Module Name: src
Committed By: pooka
Date: Tue Apr 7 18:35:49 UTC 2009
Modified Files:
src/sys/rump/include/rump: rumpuser.h
src/sys/rump/librump/rumpuser: rumpuser.c
src/sys/rump/librump/rumpvfs: rumpfs.c
Log Message:
Make it possible to use VCHR devices again.
To generate a diff of this commit:
cvs rdiff -u -r1.20 -r1.21 src/sys/rump/include/rump/rumpuser.h
cvs rdiff -u -r1.37 -r1.38 src/sys/rump/librump/rumpuser/rumpuser.c
cvs rdiff -u -r1.10 -r1.11 src/sys/rump/librump/rumpvfs/rumpfs.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/rump/include/rump/rumpuser.h
diff -u src/sys/rump/include/rump/rumpuser.h:1.20 src/sys/rump/include/rump/rumpuser.h:1.21
--- src/sys/rump/include/rump/rumpuser.h:1.20 Wed Mar 18 15:32:27 2009
+++ src/sys/rump/include/rump/rumpuser.h Tue Apr 7 18:35:49 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: rumpuser.h,v 1.20 2009/03/18 15:32:27 pooka Exp $ */
+/* $NetBSD: rumpuser.h,v 1.21 2009/04/07 18:35:49 pooka Exp $ */
/*
* Copyright (c) 2007 Antti Kantee. All Rights Reserved.
@@ -40,10 +40,11 @@
typedef void (*kernel_unlockfn)(int, int *);
int rumpuser_getfileinfo(const char *, uint64_t *, int *, int *);
+#define RUMPUSER_FT_OTHER 0
#define RUMPUSER_FT_DIR 1
#define RUMPUSER_FT_REG 2
#define RUMPUSER_FT_BLK 3
-#define RUMPUSER_FT_OTHER 4
+#define RUMPUSER_FT_CHR 4
int rumpuser_nanosleep(uint64_t *, uint64_t *, int *);
#define rumpuser_malloc(a,b) rumpuser__malloc(a,b,__func__,__LINE__);
Index: src/sys/rump/librump/rumpuser/rumpuser.c
diff -u src/sys/rump/librump/rumpuser/rumpuser.c:1.37 src/sys/rump/librump/rumpuser/rumpuser.c:1.38
--- src/sys/rump/librump/rumpuser/rumpuser.c:1.37 Wed Mar 18 15:32:27 2009
+++ src/sys/rump/librump/rumpuser/rumpuser.c Tue Apr 7 18:35:49 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: rumpuser.c,v 1.37 2009/03/18 15:32:27 pooka Exp $ */
+/* $NetBSD: rumpuser.c,v 1.38 2009/04/07 18:35:49 pooka Exp $ */
/*
* Copyright (c) 2007 Antti Kantee. All Rights Reserved.
@@ -30,7 +30,7 @@
#include <sys/cdefs.h>
#if !defined(lint)
-__RCSID("$NetBSD: rumpuser.c,v 1.37 2009/03/18 15:32:27 pooka Exp $");
+__RCSID("$NetBSD: rumpuser.c,v 1.38 2009/04/07 18:35:49 pooka Exp $");
#endif /* !lint */
/* thank the maker for this */
@@ -86,6 +86,9 @@
case S_IFBLK:
*ft = RUMPUSER_FT_BLK;
break;
+ case S_IFCHR:
+ *ft = RUMPUSER_FT_CHR;
+ break;
default:
*ft = RUMPUSER_FT_OTHER;
break;
Index: src/sys/rump/librump/rumpvfs/rumpfs.c
diff -u src/sys/rump/librump/rumpvfs/rumpfs.c:1.10 src/sys/rump/librump/rumpvfs/rumpfs.c:1.11
--- src/sys/rump/librump/rumpvfs/rumpfs.c:1.10 Fri Mar 20 08:30:52 2009
+++ src/sys/rump/librump/rumpvfs/rumpfs.c Tue Apr 7 18:35:49 2009
@@ -1,4 +1,4 @@
-/* $NetBSD: rumpfs.c,v 1.10 2009/03/20 08:30:52 pooka Exp $ */
+/* $NetBSD: rumpfs.c,v 1.11 2009/04/07 18:35:49 pooka Exp $ */
/*
* Copyright (c) 2007 Antti Kantee. All Rights Reserved.
@@ -28,7 +28,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: rumpfs.c,v 1.10 2009/03/20 08:30:52 pooka Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rumpfs.c,v 1.11 2009/04/07 18:35:49 pooka Exp $");
#include <sys/param.h>
#include <sys/mount.h>
@@ -135,7 +135,7 @@
vp = kmem_alloc(sizeof(struct vnode), KM_SLEEP);
vp->v_size = vp->v_writesize = size;
vp->v_type = vt;
- if (vp->v_type == VREG)
+ if (vp->v_type == VREG || vp->v_type == VCHR)
vp->v_type = VBLK;
if (vp->v_type != VBLK && vp->v_type != VDIR)
@@ -205,6 +205,9 @@
case RUMPUSER_FT_BLK:
vt = VBLK;
break;
+ case RUMPUSER_FT_CHR:
+ vt = VCHR;
+ break;
default:
vt = VBAD;
break;