forked from pool/virtualbox
9c5c5083fa
- Version update to 6.0.10 (released July 16 2019 by Oracle) This is a maintenance release. The following items were fixed and/or added: Various vulnerabilities are fixed (bsc#1141801) inclding CVE-2019-2859 CVE-2019-2867 CVE-2019-2866 CVE-2019-2864 CVE-2019-2865 CVE-2019-1543 CVE-2019-2863 CVE-2019-2848 CVE-2019-2877 CVE-2019-2873 CVE-2019-2874 CVE-2019-2875 CVE-2019-2876 CVE-2019-2850 User interface: fix issue inputing controller names (bug #11579) User interface: fix resize problems with recent Linux hosts (bug #18677) Serial: fixed guru meditation when raw mode is enabled (bug #18632) Serial: fixed possible VM crash under certain circumstances USB: Fixed "unrecoverable error" problems in OHCI emulation (bug #18593, 6.0.6 regression) USB: improve captured device identification VBoxManage: fix reversed reporting of audio input and output (thank you Socratis Kalogrianitis) VBoxManage: fix controlling recording for running machine (bug #18723) Guest control service: various fixes Linux hosts: kernel module build fixes for various kernels (bug #18316) Linux hosts: support UEFI secure boot driver signing on Ubuntu and Debian hosts (bug #11577) Linux hosts: fix focus grabbing problems with recent Qt versions (builds from source only; thank you Fabian Vogt (SUSE) and Larry Finger; bug #18745) Windows guests: many shared folders fixes Windows guests: fix other services failing if seamless mode was not available Linux guests: kernel module build fixes for various kernels (bugs #18677 and #18697; fixes by Larry Finger and Gianfranco Costamagna) Linux guests: do not try to load old versions of libcrypt on recent guests in Guest Additions tools (bug #18682) Linux guests: udev rules for guest kernel modules did not always take effect in time Linux guests/VMSVGA: do not forget the guest screen size after a guest reboot OS/2 guests: various shared folder fixes Revise instructions for case when VirtualBoxVM has the wrong privilege. File "fixes_for_5.2.patch" is deleted - fixed upstream. File "fixes_for_5.3.patch" is added to handle API changes in kernel 5.3. File "fixes_for_SLE15.patch" deleted. OBS-URL: https://build.opensuse.org/request/show/716635 OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=497
82 lines
3.1 KiB
Diff
82 lines
3.1 KiB
Diff
Index: VirtualBox-6.0.10/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
|
|
===================================================================
|
|
--- VirtualBox-6.0.10.orig/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
|
|
+++ VirtualBox-6.0.10/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
|
|
@@ -2123,7 +2123,10 @@ static int vboxNetFltLinuxEnumeratorCall
|
|
#endif
|
|
if (in_dev != NULL)
|
|
{
|
|
- for_ifa(in_dev) {
|
|
+ /* macros for_ifa() and endfor_ifs() disappear for kernel 5.3
|
|
+ * Code them directly */
|
|
+ struct in_ifaddr *ifa;
|
|
+ for (ifa = in_dev->ifa_list; ifa; ifa = ifa->ifa_next) {
|
|
if (VBOX_IPV4_IS_LOOPBACK(ifa->ifa_address))
|
|
return NOTIFY_OK;
|
|
|
|
@@ -2137,7 +2140,7 @@ static int vboxNetFltLinuxEnumeratorCall
|
|
|
|
pThis->pSwitchPort->pfnNotifyHostAddress(pThis->pSwitchPort,
|
|
/* :fAdded */ true, kIntNetAddrType_IPv4, &ifa->ifa_address);
|
|
- } endfor_ifa(in_dev);
|
|
+ }
|
|
}
|
|
|
|
/*
|
|
Index: VirtualBox-6.0.10/src/VBox/Runtime/r0drv/linux/mp-r0drv-linux.c
|
|
===================================================================
|
|
--- VirtualBox-6.0.10.orig/src/VBox/Runtime/r0drv/linux/mp-r0drv-linux.c
|
|
+++ VirtualBox-6.0.10/src/VBox/Runtime/r0drv/linux/mp-r0drv-linux.c
|
|
@@ -283,12 +283,16 @@ RTDECL(int) RTMpOnAll(PFNRTMPWORKER pfnW
|
|
if (RTCpuSetCount(&OnlineSet) > 1)
|
|
{
|
|
/* Fire the function on all other CPUs without waiting for completion. */
|
|
-# if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)
|
|
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 3, 0)
|
|
+ smp_call_function(rtmpLinuxAllWrapper, &Args, 0 /* wait */);
|
|
+#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)
|
|
int rc = smp_call_function(rtmpLinuxAllWrapper, &Args, 0 /* wait */);
|
|
-# else
|
|
+#else
|
|
int rc = smp_call_function(rtmpLinuxAllWrapper, &Args, 0 /* retry */, 0 /* wait */);
|
|
-# endif
|
|
+#endif
|
|
+# if LINUX_VERSION_CODE < KERNEL_VERSION(5, 3, 0)
|
|
Assert(!rc); NOREF(rc);
|
|
+#endif
|
|
}
|
|
#endif
|
|
|
|
@@ -326,7 +330,9 @@ RTDECL(int) RTMpOnOthers(PFNRTMPWORKER p
|
|
{
|
|
#ifdef CONFIG_SMP
|
|
IPRT_LINUX_SAVE_EFL_AC();
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 3, 0)
|
|
int rc;
|
|
+#endif
|
|
RTMPARGS Args;
|
|
|
|
RTTHREADPREEMPTSTATE PreemptState = RTTHREADPREEMPTSTATE_INITIALIZER;
|
|
@@ -337,14 +343,18 @@ RTDECL(int) RTMpOnOthers(PFNRTMPWORKER p
|
|
Args.cHits = 0;
|
|
|
|
RTThreadPreemptDisable(&PreemptState);
|
|
-# if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)
|
|
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 3, 0)
|
|
+ smp_call_function(rtmpLinuxWrapper, &Args, 1 /* wait */);
|
|
+#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 27)
|
|
rc = smp_call_function(rtmpLinuxWrapper, &Args, 1 /* wait */);
|
|
-# else /* older kernels */
|
|
+#else /* older kernels */
|
|
rc = smp_call_function(rtmpLinuxWrapper, &Args, 0 /* retry */, 1 /* wait */);
|
|
-# endif /* older kernels */
|
|
+#endif /* older kernels */
|
|
RTThreadPreemptRestore(&PreemptState);
|
|
|
|
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 3, 0)
|
|
Assert(rc == 0); NOREF(rc);
|
|
+#endif
|
|
IPRT_LINUX_RESTORE_EFL_AC();
|
|
#else
|
|
RT_NOREF(pfnWorker, pvUser1, pvUser2);
|