Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/rump Add bpf rump component (and put in some wscons stuf...



details:   https://anonhg.NetBSD.org/src/rev/990a190b6536
branches:  trunk
changeset: 750954:990a190b6536
user:      pooka <pooka%NetBSD.org@localhost>
date:      Tue Jan 19 22:38:21 2010 +0000

description:
Add bpf rump component (and put in some wscons stuff i forgot to earlier).

diffstat:

 sys/rump/dev/Makefile.rumpdev               |   4 +-
 sys/rump/dev/lib/libbpf/Makefile            |  14 +++++++
 sys/rump/dev/lib/libbpf/component.c         |  58 +++++++++++++++++++++++++++++
 sys/rump/dev/lib/libbpf/shlib_version       |   4 ++
 sys/rump/librump/rumpdev/rump_dev.c         |   8 +++-
 sys/rump/librump/rumpdev/rump_dev_private.h |   4 +-
 6 files changed, 87 insertions(+), 5 deletions(-)

diffs (176 lines):

diff -r 641d66d8169a -r 990a190b6536 sys/rump/dev/Makefile.rumpdev
--- a/sys/rump/dev/Makefile.rumpdev     Tue Jan 19 22:38:08 2010 +0000
+++ b/sys/rump/dev/Makefile.rumpdev     Tue Jan 19 22:38:21 2010 +0000
@@ -1,7 +1,7 @@
-#      $NetBSD: Makefile.rumpdev,v 1.6 2009/12/04 22:13:59 haad Exp $
+#      $NetBSD: Makefile.rumpdev,v 1.7 2010/01/19 22:38:21 pooka Exp $
 #
 
-RUMPDEVLIST=   cgd disk netsmb raidframe rnd dm
+RUMPDEVLIST=   bpf cgd disk netsmb raidframe rnd dm
 
 .for var in ${RUMPDEVLIST}
 RUMPDEVLIBS+=lib${var}
diff -r 641d66d8169a -r 990a190b6536 sys/rump/dev/lib/libbpf/Makefile
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/rump/dev/lib/libbpf/Makefile  Tue Jan 19 22:38:21 2010 +0000
@@ -0,0 +1,14 @@
+#      $NetBSD: Makefile,v 1.1 2010/01/19 22:38:21 pooka Exp $
+#
+
+.PATH: ${.CURDIR}/../../../../net
+
+LIB=   rumpdev_bpf
+
+SRCS=  bpf.c bpf_filter.c
+SRCS+= component.c
+
+CPPFLAGS+=     -I${.CURDIR}/../../../librump/rumpvfs
+
+.include <bsd.lib.mk>
+.include <bsd.klinks.mk>
diff -r 641d66d8169a -r 990a190b6536 sys/rump/dev/lib/libbpf/component.c
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/rump/dev/lib/libbpf/component.c       Tue Jan 19 22:38:21 2010 +0000
@@ -0,0 +1,58 @@
+/*     $NetBSD: component.c,v 1.1 2010/01/19 22:38:21 pooka Exp $      */
+
+/*
+ * Copyright (c) 2010 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/cdefs.h>
+__KERNEL_RCSID(0, "$NetBSD: component.c,v 1.1 2010/01/19 22:38:21 pooka Exp $");
+
+#include <sys/param.h>
+#include <sys/conf.h>
+#include <sys/device.h>
+#include <sys/mbuf.h>
+#include <sys/stat.h>
+
+#include <net/bpf.h>
+
+#include "rump_dev_private.h"
+#include "rump_vfs_private.h"
+
+void bpfilterattach(int);
+
+void
+rump_dev_bpf_init()
+{
+        extern const struct cdevsw bpf_cdevsw;
+       devmajor_t bmaj, cmaj;
+       int error;
+
+       bmaj = cmaj = NODEVMAJOR;
+       if ((error = devsw_attach("bpf", NULL, &bmaj, &bpf_cdevsw, &cmaj)) != 0)
+               panic("bpf devsw attach failed: %d", error);
+       if ((error = rump_vfs_makeonedevnode(S_IFCHR, "/dev/bpf", cmaj, 0)) !=0)
+               panic("cannot create bpf device nodes: %d", error);
+
+       rump_pdev_add(bpfilterattach, 1);
+}
diff -r 641d66d8169a -r 990a190b6536 sys/rump/dev/lib/libbpf/shlib_version
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sys/rump/dev/lib/libbpf/shlib_version     Tue Jan 19 22:38:21 2010 +0000
@@ -0,0 +1,4 @@
+#      $NetBSD: shlib_version,v 1.1 2010/01/19 22:38:21 pooka Exp $
+#
+major=0
+minor=0
diff -r 641d66d8169a -r 990a190b6536 sys/rump/librump/rumpdev/rump_dev.c
--- a/sys/rump/librump/rumpdev/rump_dev.c       Tue Jan 19 22:38:08 2010 +0000
+++ b/sys/rump/librump/rumpdev/rump_dev.c       Tue Jan 19 22:38:21 2010 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: rump_dev.c,v 1.11 2010/01/10 13:42:34 martin Exp $     */
+/*     $NetBSD: rump_dev.c,v 1.12 2010/01/19 22:38:21 pooka Exp $      */
 
 /*
  * Copyright (c) 2009 Antti Kantee.  All Rights Reserved.
@@ -26,7 +26,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: rump_dev.c,v 1.11 2010/01/10 13:42:34 martin Exp $");
+__KERNEL_RCSID(0, "$NetBSD: rump_dev.c,v 1.12 2010/01/19 22:38:21 pooka Exp $");
 
 #include <sys/param.h>
 #include <sys/device.h>
@@ -35,6 +35,7 @@
 
 void nocomponent(void);
 void nocomponent() {}
+__weak_alias(rump_dev_bpf_init,nocomponent);
 __weak_alias(rump_dev_cgd_init,nocomponent);
 __weak_alias(rump_dev_dm_init,nocomponent);
 __weak_alias(rump_dev_raidframe_init,nocomponent);
@@ -43,6 +44,7 @@
 __weak_alias(rump_dev_rumpusbhc_init,nocomponent);
 
 __weak_alias(rump_device_configuration,nocomponent);
+__weak_alias(rump_wscons_configuration,nocomponent);
 
 const char *rootspec = "rump0a"; /* usually comes from config */
 
@@ -57,6 +59,7 @@
 
        config_init_mi();
 
+       rump_dev_bpf_init();
        rump_dev_cgd_init();
        rump_dev_dm_init();
        rump_dev_raidframe_init();
@@ -67,6 +70,7 @@
        rump_pdev_finalize();
 
        rump_device_configuration();
+       rump_wscons_configuration();
 
        cold = 0;
        if (config_rootfound("mainbus", NULL) == NULL)
diff -r 641d66d8169a -r 990a190b6536 sys/rump/librump/rumpdev/rump_dev_private.h
--- a/sys/rump/librump/rumpdev/rump_dev_private.h       Tue Jan 19 22:38:08 2010 +0000
+++ b/sys/rump/librump/rumpdev/rump_dev_private.h       Tue Jan 19 22:38:21 2010 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: rump_dev_private.h,v 1.7 2009/12/04 22:13:59 haad Exp $        */
+/*     $NetBSD: rump_dev_private.h,v 1.8 2010/01/19 22:38:21 pooka Exp $       */
 
 /*
  * Copyright (c) 2009 Antti Kantee.  All Rights Reserved.
@@ -33,6 +33,7 @@
 void   rump_pdev_add(void (*fn)(int), int);
 void   rump_pdev_finalize(void);
 
+void   rump_dev_bpf_init(void);
 void   rump_dev_cgd_init(void);
 void   rump_dev_dm_init(void);
 void   rump_dev_raidframe_init(void);
@@ -41,6 +42,7 @@
 void   rump_dev_rumpusbhc_init(void);
 
 void   rump_device_configuration(void);
+void   rump_wscons_configuration(void);
 
 struct mainbus_attach_args {
        int maa_unit;



Home | Main Index | Thread Index | Old Index