1
0
forked from pool/virtualbox

Accepting request 745533 from Virtualization

OBS-URL: https://build.opensuse.org/request/show/745533
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/virtualbox?expand=0&rev=186
This commit is contained in:
Dominique Leuenberger 2019-11-06 12:48:33 +00:00 committed by Git OBS Bridge
commit 4c08525884
3 changed files with 40 additions and 5 deletions

View File

@ -2,11 +2,22 @@ Index: VirtualBox-6.0.14/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.
===================================================================
--- VirtualBox-6.0.14.orig/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
+++ VirtualBox-6.0.14/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
@@ -924,8 +924,13 @@ static void vboxNetFltLinuxSkBufToSG(PVB
@@ -73,6 +73,10 @@
#define VBOXNETFLT_OS_SPECFIC 1
#include "../VBoxNetFltInternal.h"
+# if CONFIG_SUSE_VERSION == 15 && CONFIG_SUSE_PATCHLEVEL == 2
+# define OPENSUSE_152
+# endif
+
typedef struct VBOXNETFLTNOTIFIER {
struct notifier_block Notifier;
PVBOXNETFLTINS pThis;
@@ -924,8 +928,13 @@ static void vboxNetFltLinuxSkBufToSG(PVB
for (i = 0; i < skb_shinfo(pBuf)->nr_frags; i++)
{
skb_frag_t *pFrag = &skb_shinfo(pBuf)->frags[i];
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 4, 0)
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 4, 0) || defined(OPENSUSE_152)
+ pSG->aSegs[iSeg].cb = pFrag->bv_len;
+ pSG->aSegs[iSeg].pv = VBOX_SKB_KMAP_FRAG(pFrag) + pFrag->bv_offset;
+#else
@ -16,11 +27,11 @@ Index: VirtualBox-6.0.14/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.
Log6((" %p", pSG->aSegs[iSeg].pv));
pSG->aSegs[iSeg++].Phys = NIL_RTHCPHYS;
Assert(iSeg <= pSG->cSegsAlloc);
@@ -940,8 +945,13 @@ static void vboxNetFltLinuxSkBufToSG(PVB
@@ -940,8 +949,13 @@ static void vboxNetFltLinuxSkBufToSG(PVB
for (i = 0; i < skb_shinfo(pFragBuf)->nr_frags; i++)
{
skb_frag_t *pFrag = &skb_shinfo(pFragBuf)->frags[i];
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 4, 0)
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 4, 0) || defined(OPENSUSE_152)
+ pSG->aSegs[iSeg].cb = pFrag->bv_len;
+ pSG->aSegs[iSeg].pv = VBOX_SKB_KMAP_FRAG(pFrag) + pFrag->bv_offset;
+#else

View File

@ -1,3 +1,18 @@
-------------------------------------------------------------------
Tue Nov 5 14:44:08 UTC 2019 - Larry Finger <Larry.Finger@gmail.com>
- Try to fix unresolvable kernel version in Leap 15.2.
-------------------------------------------------------------------
Sat Nov 2 00:58:22 UTC 2019 - Larry Finger <Larry.Finger@gmail.com>
- Fix build errors in Leap 42.3
-------------------------------------------------------------------
Thu Oct 31 18:55:37 UTC 2019 - Larry Finger <Larry.Finger@gmail.com>
- Update "fixes_for_5.4.patch" for kernel API backport in openSUSE 15.2
-------------------------------------------------------------------
Tue Oct 22 06:44:20 UTC 2019 - Larry Finger <Larry.Finger@gmail.com>

View File

@ -60,7 +60,9 @@ Url: http://www.virtualbox.org/
#%%(bash %%{_sourcedir}/virtualbox-patch-source.sh VirtualBox-%%{version}.tar.bz2)
Source0: VirtualBox-%{version}-patched.tar.bz2
Source1: UserManual.pdf
%if 0%{?sle_version} != 120300
Source2: VirtualBox.appdata.xml
%endif
Source3: %{name}-60-vboxguest.rules
Source4: %{name}-default.virtualbox
Source5: %{name}-kmp-files
@ -176,7 +178,7 @@ BuildRequires: glibc-devel-static
BuildRequires: gsoap-devel >= 2.8.50
BuildRequires: java-devel >= 1.6.0
BuildRequires: kbuild >= 0.1.9998svn3101
#BuildRequires: kernel-syms
BuildRequires: kernel-syms
BuildRequires: libcap-devel
BuildRequires: libcurl-devel
BuildRequires: libelf-devel
@ -444,6 +446,7 @@ as an "extpack" for VirtualBox. The implementation is licensed under GPL.
%patch123 -p1
%patch125 -p1
%patch128 -p1
echo "sle_version " %{?sle_version}", is_opensuse " %{?is_opensuse}", suse_version " %{?suse_version}
# Adjustments that are version dependent
%if 0%{?sle_version} == 120300 && 0%{?is_opensuse}
# Patch for Leap 42.3
@ -589,7 +592,9 @@ install -d -m 755 %{buildroot}%{_bindir}
install -d -m 755 %{buildroot}%{_sbindir}
install -d -m 755 %{buildroot}%{_datadir}/virtualbox/nls
install -d -m 755 %{buildroot}%{_datadir}/pixmaps
%if 0%{?sle_version} != 120300
install -d -m 755 %{buildroot}%{_datadir}/metainfo
%endif
install -d -m 755 %{buildroot}%{_datadir}/applications
install -d -m 755 %{buildroot}%{_vbox_instdir}/sdk/bindings/xpcom
install -d -m 755 %{buildroot}%{_vbox_instdir}/components
@ -711,9 +716,11 @@ popd
install -m 644 out/linux.*/release/bin/virtualbox.desktop %{buildroot}%{_datadir}/applications/%{name}.desktop
%suse_update_desktop_file %{buildroot}%{_datadir}/applications/%{name}.desktop 'System Emulator'
%if 0%{?sle_version} != 120300
# install appstream file
mkdir -p %{buildroot}%{_datadir}/metainfo
install -m 644 %{SOURCE2} %{buildroot}%{_datadir}/metainfo/%{name}.appdata.xml
%endif
# create a menu entry
mkdir -p %{buildroot}%{_datadir}/pixmaps
@ -1028,7 +1035,9 @@ export DISABLE_RESTART_ON_UPDATE=yes
%{_vbox_instdir}/VBoxSharedClipboard.so
%{_datadir}/pixmaps/virtualbox.png
%{_datadir}/applications/%{name}.desktop
%if 0%{?sle_version} != 120300
%{_datadir}/metainfo/%{name}.appdata.xml
%endif
%{_udevrulesdir}/60-vboxdrv.rules
%files guest-x11