Module Name: src Committed By: pooka Date: Wed Mar 31 14:22:27 UTC 2010
Modified Files: src/usr.sbin/puffs: Makefile Added Files: src/usr.sbin/puffs/rump_kernfs: Makefile rump_kernfs.c Log Message: Add kernfs server. Don't build & install it by default, since it represents the state of the rump virtual kernel and not the host kernel. However, it's useful for debugging kernfs. To generate a diff of this commit: cvs rdiff -u -r1.12 -r1.13 src/usr.sbin/puffs/Makefile cvs rdiff -u -r0 -r1.1 src/usr.sbin/puffs/rump_kernfs/Makefile \ src/usr.sbin/puffs/rump_kernfs/rump_kernfs.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/usr.sbin/puffs/Makefile diff -u src/usr.sbin/puffs/Makefile:1.12 src/usr.sbin/puffs/Makefile:1.13 --- src/usr.sbin/puffs/Makefile:1.12 Mon Mar 8 12:48:31 2010 +++ src/usr.sbin/puffs/Makefile Wed Mar 31 14:22:27 2010 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.12 2010/03/08 12:48:31 pooka Exp $ +# $NetBSD: Makefile,v 1.13 2010/03/31 14:22:27 pooka Exp $ SUBDIR= mount_9p mount_psshfs mount_sysctlfs @@ -14,6 +14,9 @@ # and is therefore not useful for the average user #SUBDIR+=rump_fdesc +# ditto for kernfs +#SUBDIR+=rump_kernfs + # rump_mqmfs is just another ffs, useful mainly for debugging #SUBDIR+=rump_nqmfs Added files: Index: src/usr.sbin/puffs/rump_kernfs/Makefile diff -u /dev/null src/usr.sbin/puffs/rump_kernfs/Makefile:1.1 --- /dev/null Wed Mar 31 14:22:27 2010 +++ src/usr.sbin/puffs/rump_kernfs/Makefile Wed Mar 31 14:22:27 2010 @@ -0,0 +1,8 @@ +# $NetBSD: Makefile,v 1.1 2010/03/31 14:22:27 pooka Exp $ +# + +MOUNTNAME= kernfs + +ISRUMP= # syndicate + +.include <bsd.prog.mk> Index: src/usr.sbin/puffs/rump_kernfs/rump_kernfs.c diff -u /dev/null src/usr.sbin/puffs/rump_kernfs/rump_kernfs.c:1.1 --- /dev/null Wed Mar 31 14:22:27 2010 +++ src/usr.sbin/puffs/rump_kernfs/rump_kernfs.c Wed Mar 31 14:22:27 2010 @@ -0,0 +1,57 @@ +/* $NetBSD: rump_kernfs.c,v 1.1 2010/03/31 14:22:27 pooka Exp $ */ + +/* + * Copyright (c) 2008 Antti Kantee. All Rights Reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS + * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include <sys/types.h> +#include <sys/mount.h> + +#include <err.h> +#include <puffs.h> +#include <stdlib.h> +#include <unistd.h> + +#include <rump/p2k.h> + +#include "mount_kernfs.h" + +int +main(int argc, char *argv[]) +{ + char canon_dev[MAXPATHLEN], canon_dir[MAXPATHLEN]; + int mntflags; + int rv; + + setprogname(argv[0]); + + mount_kernfs_parseargs(argc, argv, NULL, &mntflags, + canon_dev, canon_dir); + rv = p2k_run_fs(MOUNT_KERNFS, canon_dev, canon_dir, mntflags, + NULL, 0, PUFFS_KFLAG_NOCACHE); + if (rv) + err(1, "mount"); + + return 0; +}