Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 2 Mar 2016 11:16:21 +0300
From:      Vladimir Zakharov <zakharov.vv@gmail.com>
To:        Michael Butler <imb@protected-networks.net>
Cc:        freebsd-current <freebsd-current@freebsd.org>, "freebsd-emulation@freebsd.org" <freebsd-emulation@freebsd.org>
Subject:   Re: SVN r296272 breaks virtualbox
Message-ID:  <20160302081621.GA29906@vzakharov>
In-Reply-To: <56D617D1.5040209@protected-networks.net>
References:  <56D617D1.5040209@protected-networks.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Mar 01, 2016, Michael Butler wrote:
> The removal of "taskqueue_enqueue_fast" breaks the virtualbox kmods:
> 
> Mar  1 16:54:36 toshi kernel: vboxdrv: fAsync=0 offMin=0x914 offMax=0x151c
> Mar  1 16:54:36 toshi kernel: link_elf_obj: symbol
> taskqueue_enqueue_fast undefined
> Mar  1 16:54:36 toshi kernel: linker_load_file: Unsupported file type
> Mar  1 16:54:36 toshi kernel: link_elf_obj: symbol
> taskqueue_enqueue_fast undefined
> Mar  1 16:54:36 toshi kernel: linker_load_file: Unsupported file type
> Mar  1 16:54:36 toshi kernel: KLD vboxnetadp.ko: depends on vboxnetflt -
> not available or version mismatch
> Mar  1 16:54:36 toshi kernel: linker_load_file: Unsupported file type

Attached patch for emulators/virtualbox-ose and rebuilding
virtualbox-ose and virtualbox-ose-kmod fixed problem for me.

=======================
--- files/patch-src-VBox-HostDrivers-VBoxNetFlt-freebsd-VBoxNetFlt-freebsd.c.orig       2016-03-02 10:15:39.814893000 +0300
+++ files/patch-src-VBox-HostDrivers-VBoxNetFlt-freebsd-VBoxNetFlt-freebsd.c    2016-03-02 10:16:39.070847000 +0300
@@ -1,10 +1,5 @@
-Add VLAN trunking support to vboxnetflt
-
-See:           http://lists.freebsd.org/pipermail/freebsd-emulation/2012-April/009698.html
-See:           http://lists.freebsd.org/pipermail/freebsd-emulation/2013-May/010605.html
-Submitted by:  Landon J Fuller <landonf at plausible.coop>
---- ./src/VBox/HostDrivers/VBoxNetFlt/freebsd/VBoxNetFlt-freebsd.c.orig        2013-04-12 06:38:11.000000000 -0400
-+++ ./src/VBox/HostDrivers/VBoxNetFlt/freebsd/VBoxNetFlt-freebsd.c     2013-05-25 20:14:52.152180452 -0400
+--- src/VBox/HostDrivers/VBoxNetFlt/freebsd/VBoxNetFlt-freebsd.c.orig  2016-01-19 22:18:38.000000000 +0300
++++ src/VBox/HostDrivers/VBoxNetFlt/freebsd/VBoxNetFlt-freebsd.c       2016-03-02 10:10:21.181922000 +0300
 @@ -51,6 +51,7 @@
  #include <net/if_dl.h>
  #include <net/if_types.h>
@@ -13,6 +8,24 @@

  #include <netgraph/ng_message.h>
  #include <netgraph/netgraph.h>
+@@ -369,7 +370,7 @@
+         mtx_lock_spin(&pThis->u.s.inq.ifq_mtx);
+         _IF_ENQUEUE(&pThis->u.s.inq, m);
+         mtx_unlock_spin(&pThis->u.s.inq.ifq_mtx);
+-        taskqueue_enqueue_fast(taskqueue_fast, &pThis->u.s.tskin);
++        taskqueue_enqueue(taskqueue_fast, &pThis->u.s.tskin);
+     }
+     /*
+      * Handle mbufs on the outgoing hook, frames going to the interface
+@@ -387,7 +388,7 @@
+         mtx_lock_spin(&pThis->u.s.outq.ifq_mtx);
+         _IF_ENQUEUE(&pThis->u.s.outq, m);
+         mtx_unlock_spin(&pThis->u.s.outq.ifq_mtx);
+-        taskqueue_enqueue_fast(taskqueue_fast, &pThis->u.s.tskout);
++        taskqueue_enqueue(taskqueue_fast, &pThis->u.s.tskout);
+     }
+     else
+     {
 @@ -427,6 +428,8 @@
      struct ifnet *ifp = pThis->u.s.ifp;
      unsigned int cSegs = 0;
=======================

-- 
Regards,                 | "In theory there is no difference between theory
  Vladimir Zakharov      | and practice. In practice there is."- Yogi Berra



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160302081621.GA29906>