Tags: patch

I can reproducible this issue and same error log on my Debian Sid via Bare Metal VM, quite frankly I even don't know everything about C or C++. However because your make.log is readable for me, so
here the patch I created.

But, I don't believe this patch's quite realiable. So try yourself with risk.

Cheers.

On Sat, 11 Nov 2017 21:15:29 +0900 Soukaku <souk...@downtown.jp> wrote:
> Package: virtualbox-dkms
> Version: 5.2.0-dfsg-4
> Severity: normal
>
> Dear Maintainer,
>
> When trying to start a virtual machine on Virtualbox, a message urging the execution of "modprobe vobxdrv" is displayed as follo
> ws.
>
> -- Virtualbox Dialog
> The VirtualBox Linux kernel driver (vboxdrv) is either not loaded or there is a permission problem with /dev/vboxdrv. Please rei
> nstall virtualbox-dkms package a
> nd load the kernel module by executing
>
> 'modprobe vboxdrv'
>
> as root.
> --
>
> However, even if "modprobe vboxdrv" is executed, if there is no module, an error will be displayed. > So I'm trying to reinstall virtualbox-dkms, but because I failed to build virtualbox-dkms, I can not reinstall it.
>
> When "aptitude reinstall virtualbox-dkms" is executed, the following message will be displayed.
>
> -- aptitude message
> Preparing to unpack .../virtualbox-dkms_5.2.0-dfsg-4_all.deb ...
>
> ------------------------------
> Deleting module version: 5.2.0
> completely from the DKMS tree.
> ------------------------------
> Done.
> Unpacking virtualbox-dkms (5.2.0-dfsg-4) over (5.2.0-dfsg-4) ...
> Setting up virtualbox-dkms (5.2.0-dfsg-4) ...
> Loading new virtualbox-5.2.0 DKMS files...
> Building for 4.14.0-rc7-amd64
> Building initial module for 4.14.0-rc7-amd64
> Error! Bad return status for module build on kernel: 4.14.0-rc7-amd64 (x86_64) > Consult /var/lib/dkms/virtualbox/5.2.0/build/make.log for more information. > Job for virtualbox.service failed because the control process exited with error code. > See "systemctl status virtualbox.service" and "journalctl -xe" for details.
> invoke-rc.d: initscript virtualbox, action "restart" failed.
> * virtualbox.service - LSB: VirtualBox Linux kernel module
> Loaded: loaded (/etc/init.d/virtualbox; generated; vendor preset: enabled) > Active: failed (Result: exit-code) since Sat 2017-11-11 20:14:42 JST; 60ms ago
> Docs: man:systemd-sysv-generator(8)
> Process: 13388 ExecStart=/etc/init.d/virtualbox start (code=exited, status=1/FAILURE)
>
> Nov 11 20:14:42 vhost01 systemd[1]: Starting LSB: VirtualBox Linux kernel module... > Nov 11 20:14:42 vhost01 virtualbox[13388]: Loading VirtualBox kernel modules...No suitable module for running kernel found ... f
> ailed!
> Nov 11 20:14:42 vhost01 virtualbox[13388]: failed!
> Nov 11 20:14:42 vhost01 systemd[1]: virtualbox.service: Control process exited, code=exited status=1 > Nov 11 20:14:42 vhost01 systemd[1]: virtualbox.service: Failed with result 'exit-code'. > Nov 11 20:14:42 vhost01 systemd[1]: Failed to start LSB: VirtualBox Linux kernel module.
>
>
> -- System Information:
> Debian Release: buster/sid
> APT prefers unstable

--- VBoxNetFlt-linux.c.orig	2017-10-18 14:12:45.000000000 +0700
+++ VBoxNetFlt-linux.c	2017-11-11 21:23:47.282210329 +0700
@@ -737,8 +737,8 @@
         case PDMNETWORKGSOTYPE_IPV4_TCP:
             fGsoType = SKB_GSO_TCPV4;
             break;
-        case PDMNETWORKGSOTYPE_IPV4_UDP:
-            fGsoType = SKB_GSO_UDP;
+        case PDMNETWORKGSOTYPE_IPV4_ESP:
+            fGsoType = SKB_GSO_ESP;
             break;
         case PDMNETWORKGSOTYPE_IPV6_TCP:
             fGsoType = SKB_GSO_TCPV6;
@@ -1273,7 +1273,7 @@
      * Check the GSO properties of the socket buffer and make sure it fits.
      */
     /** @todo Figure out how to handle SKB_GSO_TCP_ECN! */
-    if (RT_UNLIKELY( skb_shinfo(pSkb)->gso_type & ~(SKB_GSO_UDP | SKB_GSO_DODGY | SKB_GSO_TCPV6 | SKB_GSO_TCPV4) ))
+    if (RT_UNLIKELY( skb_shinfo(pSkb)->gso_type & ~(SKB_GSO_ESP | SKB_GSO_DODGY | SKB_GSO_TCPV6 | SKB_GSO_TCPV4) ))
     {
         Log5(("vboxNetFltLinuxCanForwardAsGso: gso_type=%#x\n", skb_shinfo(pSkb)->gso_type));
         return false;
@@ -1523,7 +1523,7 @@
         }
 #endif /* !VBOXNETFLT_SG_SUPPORT */
 # ifdef VBOXNETFLT_WITH_GSO_RECV
-        if (   (skb_shinfo(pBuf)->gso_type & (SKB_GSO_UDP | SKB_GSO_TCPV6 | SKB_GSO_TCPV4))
+        if (   (skb_shinfo(pBuf)->gso_type & (SKB_GSO_ESP | SKB_GSO_TCPV6 | SKB_GSO_TCPV4))
             && vboxNetFltLinuxCanForwardAsGso(pThis, pBuf, fSrc, &GsoCtx) )
             vboxNetFltLinuxForwardAsGso(pThis, pBuf, fSrc, &GsoCtx);
         else

Reply via email to