forked from pool/virtualbox
Accepting request 1188058 from home:larryr:branches:Virtualization
--------------------------------------------------------------------- - Version bump to VirtualBox 7.0.20 (released July 16 2024 by Oracle)) This is a maintenance release. The following items were fixed and/or added: TPM: Fixed errors appearing the event viewer with Windows guests macOS Hosts: Fixed passing USB devices to the VM (bug #21218) Audio: Fixed recording with HDA emulation after newer Windows 10 / 11 guests got rebooted USB: Fixed a deadlock in OHCI triggered when saving the current state of a VM or taking a snapshot (bug #22059) Linux Guest and Host: Introduced initial support for OpenSuse 15.6 kernel Linux Guest and Host: Introduced initial support for RHEL 9.5 kernel (bug #22099) Guest Additions: Shared Clipboard: Fixed issue when extra new lines were pasted when copying text between Win and X11 (bug #21716) UEFI Secure Boot: Add new Microsoft certificates to list for new VMs OBS-URL: https://build.opensuse.org/request/show/1188058 OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=743
This commit is contained in:
parent
a065251386
commit
4c5592f466
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:23271ffe5f6141af3be22359c65ec73ce784286a60795f445c5353c8a43a0c69
|
||||
size 4600053
|
||||
oid sha256:cd25f171445f6037e69d3ed1e194aebfd08006c8dd343d3481f6f65526992803
|
||||
size 4600713
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ee3266e4fda1638efaaafd1b6b58c4327c940ff1f3a9605f5292b8393e311742
|
||||
size 156466139
|
3
VirtualBox-7.0.20-patched.tar.bz2
Normal file
3
VirtualBox-7.0.20-patched.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5717b94fb45dc973c932c784bef311e1c605766489e8a40b498cd8dd2789480b
|
||||
size 151174176
|
@ -1,9 +1,7 @@
|
||||
Index: VirtualBox-7.0.14/src/VBox/Frontends/VBoxSDL/VBoxSDL.cpp
|
||||
Index: VirtualBox-7.0.20/src/VBox/Frontends/VBoxSDL/VBoxSDL.cpp
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Frontends/VBoxSDL/VBoxSDL.cpp
|
||||
+++ VirtualBox-7.0.14/src/VBox/Frontends/VBoxSDL/VBoxSDL.cpp
|
||||
+# if defined(CONFIG_SUSE_VERSION) && CONFIG_SUSE_VERSION == 15 && CONFIG_SUSE_PATCHLEVEL == 5
|
||||
+# define OPENSUSE_155
|
||||
--- VirtualBox-7.0.20.orig/src/VBox/Frontends/VBoxSDL/VBoxSDL.cpp
|
||||
+++ VirtualBox-7.0.20/src/VBox/Frontends/VBoxSDL/VBoxSDL.cpp
|
||||
@@ -710,7 +710,7 @@ static const char *keyModToStr(unsigned
|
||||
RT_CASE_RET_STR(KMOD_NUM);
|
||||
RT_CASE_RET_STR(KMOD_CAPS);
|
||||
@ -13,4 +11,3 @@ Index: VirtualBox-7.0.14/src/VBox/Frontends/VBoxSDL/VBoxSDL.cpp
|
||||
default:
|
||||
break;
|
||||
}
|
||||
+# endif
|
||||
|
@ -1,7 +1,7 @@
|
||||
Index: VirtualBox-7.0.18/configure
|
||||
Index: VirtualBox-7.0.20/configure
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.18.orig/configure
|
||||
+++ VirtualBox-7.0.18/configure
|
||||
--- VirtualBox-7.0.20.orig/configure
|
||||
+++ VirtualBox-7.0.20/configure
|
||||
@@ -1186,21 +1186,19 @@ check_sdl()
|
||||
fail
|
||||
fi
|
||||
@ -50,10 +50,10 @@ Index: VirtualBox-7.0.18/configure
|
||||
[ $WITH_SDL_TTF -eq 1 -a $OSE -eq 0 ] && check_sdl_ttf
|
||||
[ $WITH_X11 -eq 1 ] && check_x
|
||||
# TODO check for xcomposite-dev (X11/extensions/Xcomposite.h, additions only)
|
||||
Index: VirtualBox-7.0.18/src/VBox/Frontends/VBoxSDL/Makefile.kmk
|
||||
Index: VirtualBox-7.0.20/src/VBox/Frontends/VBoxSDL/Makefile.kmk
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.18.orig/src/VBox/Frontends/VBoxSDL/Makefile.kmk
|
||||
+++ VirtualBox-7.0.18/src/VBox/Frontends/VBoxSDL/Makefile.kmk
|
||||
--- VirtualBox-7.0.20.orig/src/VBox/Frontends/VBoxSDL/Makefile.kmk
|
||||
+++ VirtualBox-7.0.20/src/VBox/Frontends/VBoxSDL/Makefile.kmk
|
||||
@@ -51,7 +51,7 @@ if !defined(VBOX_WITH_HARDENING) || "$(K
|
||||
PROGRAMS += VBoxSDL
|
||||
endif
|
||||
|
@ -1,7 +1,7 @@
|
||||
Index: VirtualBox-7.0.18/src/libs/dxvk-native-1.9.2a/src/util/util_bit.h
|
||||
Index: VirtualBox-7.0.20/src/libs/dxvk-native-1.9.2a/src/util/util_bit.h
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.18.orig/src/libs/dxvk-native-1.9.2a/src/util/util_bit.h
|
||||
+++ VirtualBox-7.0.18/src/libs/dxvk-native-1.9.2a/src/util/util_bit.h
|
||||
--- VirtualBox-7.0.20.orig/src/libs/dxvk-native-1.9.2a/src/util/util_bit.h
|
||||
+++ VirtualBox-7.0.20/src/libs/dxvk-native-1.9.2a/src/util/util_bit.h
|
||||
@@ -13,6 +13,7 @@
|
||||
#include <intrin.h>
|
||||
#endif
|
||||
@ -10,10 +10,10 @@ Index: VirtualBox-7.0.18/src/libs/dxvk-native-1.9.2a/src/util/util_bit.h
|
||||
#include "util_likely.h"
|
||||
#include "util_math.h"
|
||||
|
||||
Index: VirtualBox-7.0.18/src/VBox/Additions/x11/x11include/XFree86-4.3/Xserver/misc.h
|
||||
Index: VirtualBox-7.0.20/src/VBox/Additions/x11/x11include/XFree86-4.3/Xserver/misc.h
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.18.orig/src/VBox/Additions/x11/x11include/XFree86-4.3/Xserver/misc.h
|
||||
+++ VirtualBox-7.0.18/src/VBox/Additions/x11/x11include/XFree86-4.3/Xserver/misc.h
|
||||
--- VirtualBox-7.0.20.orig/src/VBox/Additions/x11/x11include/XFree86-4.3/Xserver/misc.h
|
||||
+++ VirtualBox-7.0.20/src/VBox/Additions/x11/x11include/XFree86-4.3/Xserver/misc.h
|
||||
@@ -66,6 +66,9 @@ TORTIOUS ACTION, ARISING OUT OF OR IN CO
|
||||
OF THIS SOFTWARE.
|
||||
|
||||
|
@ -1,516 +0,0 @@
|
||||
Index: VirtualBox-7.0.14/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
|
||||
+++ VirtualBox-7.0.14/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
|
||||
@@ -89,6 +89,17 @@
|
||||
#define VBOXNETFLT_OS_SPECFIC 1
|
||||
#include "../VBoxNetFltInternal.h"
|
||||
|
||||
+# if defined(CONFIG_SUSE_VERSION) && CONFIG_SUSE_VERSION == 15 && CONFIG_SUSE_PATCHLEVEL == 6
|
||||
+# define OPENSUSE_156
|
||||
+# endif
|
||||
+# if defined(CONFIG_SUSE_VERSION) && CONFIG_SUSE_VERSION == 15 && CONFIG_SUSE_PATCHLEVEL == 5
|
||||
+# define OPENSUSE_155
|
||||
+# endif
|
||||
+
|
||||
+#if RTLNX_SUSE_MAJ_PREREQ(15, 6)
|
||||
+#include <net/gso.h>
|
||||
+#endif
|
||||
+
|
||||
typedef struct VBOXNETFLTNOTIFIER {
|
||||
struct notifier_block Notifier;
|
||||
PVBOXNETFLTINS pThis;
|
||||
Index: VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_drv.c
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Additions/linux/drm/vbox_drv.c
|
||||
+++ VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_drv.c
|
||||
@@ -39,6 +39,7 @@
|
||||
#include "vbox_drv.h"
|
||||
|
||||
#include <drm/drm_crtc_helper.h>
|
||||
+
|
||||
#if RTLNX_VER_MIN(5,1,0) || RTLNX_RHEL_MAJ_PREREQ(8,1)
|
||||
# include <drm/drm_probe_helper.h>
|
||||
#endif
|
||||
@@ -342,12 +343,15 @@ static void vbox_master_drop(struct drm_
|
||||
}
|
||||
|
||||
static struct drm_driver driver = {
|
||||
-#if RTLNX_VER_MAX(5,4,0) && !RTLNX_RHEL_MAJ_PREREQ(8,3) && !RTLNX_SUSE_MAJ_PREREQ(15,3)
|
||||
- .driver_features = DRIVER_MODESET | DRIVER_GEM | DRIVER_HAVE_IRQ |
|
||||
+#if RTLNX_VER_MAX(5,4,0)
|
||||
+ .driver_features =
|
||||
+#if defined(OPENSUSE_152)
|
||||
+ DRIVER_PRIME |
|
||||
+#endif
|
||||
# if RTLNX_VER_MAX(5,1,0) && !RTLNX_RHEL_MAJ_PREREQ(8,1)
|
||||
DRIVER_IRQ_SHARED |
|
||||
# endif
|
||||
- DRIVER_PRIME,
|
||||
+ DRIVER_MODESET | DRIVER_GEM | DRIVER_HAVE_IRQ,
|
||||
#else /* >= 5.4.0 && RHEL >= 8.3 && SLES >= 15-SP3 */
|
||||
.driver_features = DRIVER_MODESET | DRIVER_GEM | DRIVER_HAVE_IRQ,
|
||||
#endif /* < 5.4.0 */
|
||||
@@ -395,7 +399,7 @@ static struct drm_driver driver = {
|
||||
#endif
|
||||
.gem_prime_import = drm_gem_prime_import,
|
||||
.gem_prime_import_sg_table = vbox_gem_prime_import_sg_table,
|
||||
-#if RTLNX_VER_MAX(6,6,0) && !RTLNX_RHEL_RANGE(9,4, 9,99)
|
||||
+#if RTLNX_VER_MAX(6,4,0) && !RTLNX_RHEL_RANGE(9,4, 9,99)
|
||||
.gem_prime_mmap = vbox_gem_prime_mmap,
|
||||
#endif
|
||||
|
||||
Index: VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_main.c
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Additions/linux/drm/vbox_main.c
|
||||
+++ VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_main.c
|
||||
@@ -663,8 +663,12 @@ static inline u64 vbox_bo_mmap_offset(st
|
||||
#elif RTLNX_VER_MAX(3,12,0) && !RTLNX_RHEL_MAJ_PREREQ(7,0)
|
||||
return bo->bo.addr_space_offset;
|
||||
#else
|
||||
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5, 4, 0)
|
||||
+ return drm_vma_node_offset_addr(&bo->bo.base.vma_node);
|
||||
+#else
|
||||
return drm_vma_node_offset_addr(&bo->bo.vma_node);
|
||||
#endif /* >= 5.4.0 */
|
||||
+#endif
|
||||
}
|
||||
|
||||
int
|
||||
Index: VirtualBox-7.0.14/include/iprt/cdefs.h
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/include/iprt/cdefs.h
|
||||
+++ VirtualBox-7.0.14/include/iprt/cdefs.h
|
||||
@@ -1399,14 +1399,15 @@
|
||||
#if RT_CLANG_PREREQ(4, 0) && RT_CPLUSPLUS_PREREQ(201100)
|
||||
# define RT_FALL_THROUGH() [[clang::fallthrough]]
|
||||
#elif RT_CLANG_PREREQ(12, 0) || RT_GNUC_PREREQ(7, 0)
|
||||
-# define RT_FALL_THROUGH() __attribute__((__fallthrough__))
|
||||
+# define FALL_THROUGH __attribute__((__fallthrough__))
|
||||
#else
|
||||
-# define RT_FALL_THROUGH() (void)0
|
||||
+# define FALL_THROUGH (void)0
|
||||
#endif
|
||||
/** @def RT_FALL_THRU
|
||||
* Tell the compiler that we're falling thru to the next case in a switch.
|
||||
* @sa RT_FALL_THROUGH */
|
||||
-#define RT_FALL_THRU() RT_FALL_THROUGH()
|
||||
+#define RT_FALL_THRU() FALL_THROUGH
|
||||
+#define RT_FALL_THROUGH() FALL_THROUGH
|
||||
|
||||
|
||||
/** @def RT_IPRT_FORMAT_ATTR
|
||||
Index: VirtualBox-7.0.14/kBuild/header.kmk
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/kBuild/header.kmk
|
||||
+++ VirtualBox-7.0.14/kBuild/header.kmk
|
||||
@@ -764,7 +764,7 @@ RMDIR_EXT := $(KBUILD_BIN_PATH)/kmk_rm
|
||||
RMDIR_INT := kmk_builtin_rmdir
|
||||
RMDIR := $(RMDIR_INT)
|
||||
|
||||
-SED_EXT := $(KBUILD_BIN_PATH)/kmk_sed$(HOSTSUFF_EXE)
|
||||
+SED_EXT := /usr/bin/kmk_sed$(HOSTSUFF_EXE)
|
||||
SED_INT := $(SED_EXT)
|
||||
SED := $(SED_EXT)
|
||||
|
||||
Index: VirtualBox-7.0.14/configure
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/configure
|
||||
+++ VirtualBox-7.0.14/configure
|
||||
@@ -2039,7 +2039,7 @@ check_kbuild()
|
||||
fi
|
||||
echo "export KBUILD_PATH KBUILD_DEVTOOLS PATH" >> $ENV
|
||||
echo "unset path_kbuild_bin path_tools_bin" >> $ENV
|
||||
- KBUILD_SED="$KBUILDDIR_BIN/kmk_sed"
|
||||
+ KBUILD_SED="/usr/bin/kmk_sed"
|
||||
|
||||
echo '' >> $ENV
|
||||
echo "# Legacy - do not use:" >> $ENV
|
||||
@@ -2049,7 +2049,7 @@ check_kbuild()
|
||||
echo '' >> $ENV
|
||||
elif check_avail "kmk" KBUILDDIR really; then
|
||||
# check for installed kBuild
|
||||
- KBUILD_SED="`which_wrapper kmk_sed`"
|
||||
+ KBUILD_SED="/usr/bin/kmk_sed"
|
||||
else
|
||||
fail
|
||||
fi
|
||||
Index: VirtualBox-7.0.14/tools/bin/backport-commit.sh
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/tools/bin/backport-commit.sh
|
||||
+++ VirtualBox-7.0.14/tools/bin/backport-commit.sh
|
||||
@@ -29,7 +29,7 @@
|
||||
#
|
||||
# Determin script dir so we can source the common bits.
|
||||
#
|
||||
-MY_SED=kmk_sed
|
||||
+MY_SED=/usr/bin/kmk_sed
|
||||
MY_SCRIPT_DIR=`echo "$0" | "${MY_SED}" -e 's|\\\|/|g' -e 's|^\(.*\)/[^/][^/]*$|\1|'` # \ -> / is for windows.
|
||||
if test "${MY_SCRIPT_DIR}" = "$0"; then
|
||||
MY_SCRIPT_DIR=`pwd -L`
|
||||
Index: VirtualBox-7.0.14/tools/bin/backport-common.sh
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/tools/bin/backport-common.sh
|
||||
+++ VirtualBox-7.0.14/tools/bin/backport-common.sh
|
||||
@@ -1,4 +1,4 @@
|
||||
-# $Id: backport-common.sh $
|
||||
+ $Id: backport-common.sh $
|
||||
## @file
|
||||
# Common backport script bits.
|
||||
#
|
||||
@@ -33,7 +33,7 @@
|
||||
MY_PRINTF=kmk_printf
|
||||
MY_RM=kmk_rm
|
||||
MY_SVN=svn
|
||||
- MY_SED=kmk_sed
|
||||
+ MY_SED=/usr/bin/kmk_sed
|
||||
|
||||
#
|
||||
# Functions.
|
||||
Index: VirtualBox-7.0.14/tools/bin/backport-merge-and-commit.sh
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/tools/bin/backport-merge-and-commit.sh
|
||||
+++ VirtualBox-7.0.14/tools/bin/backport-merge-and-commit.sh
|
||||
@@ -29,7 +29,7 @@
|
||||
#
|
||||
# Determin script dir so we can invoke the two worker scripts.
|
||||
#
|
||||
-MY_SED=kmk_sed
|
||||
+MY_SED=/usr/bin/kmk_sed
|
||||
MY_SCRIPT_DIR=`echo "$0" | "${MY_SED}" -e 's|\\\|/|g' -e 's|^\(.*\)/[^/][^/]*$|\1|'` # \ -> / is for windows.
|
||||
if test "${MY_SCRIPT_DIR}" = "$0"; then
|
||||
MY_SCRIPT_DIR=`pwd -L`
|
||||
Index: VirtualBox-7.0.14/tools/bin/backport-merge.sh
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/tools/bin/backport-merge.sh
|
||||
+++ VirtualBox-7.0.14/tools/bin/backport-merge.sh
|
||||
@@ -29,7 +29,7 @@
|
||||
#
|
||||
# Determin script dir so we can source the common bits.
|
||||
#
|
||||
-MY_SED=kmk_sed
|
||||
+MY_SED=/usr/bin/kmk_sed
|
||||
MY_SCRIPT_DIR=`echo "$0" | "${MY_SED}" -e 's|\\\|/|g' -e 's|^\(.*\)/[^/][^/]*$|\1|'` # \ -> / is for windows.
|
||||
if test "${MY_SCRIPT_DIR}" = "$0"; then
|
||||
MY_SCRIPT_DIR=`pwd -L`
|
||||
Index: VirtualBox-7.0.14/src/VBox/Main/Makefile.kmk
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Main/Makefile.kmk
|
||||
+++ VirtualBox-7.0.14/src/VBox/Main/Makefile.kmk
|
||||
@@ -264,7 +264,7 @@ $(VBOX_XIDL_FILE).ts +| $(VBOX_XIDL_FILE
|
||||
| $$(dir $$@)
|
||||
$(call KB_FN_AUTO_CMD_DEPS_COMMANDS)
|
||||
$(QUIET)$(VBOX_XSLTPROC) -o $(VBOX_XIDL_FILE).ts-tmp $(VBOX_PATH_MAIN_SRC)/idl/docstrip.xsl $(VBOX_XIDL_FILE_SRC)
|
||||
- $(QUIET)$(SED) -e 's/ *$(DOLLAR)//g' -e '/^$(DOLLAR)/d' --output $(VBOX_XIDL_FILE).ts $(VBOX_XIDL_FILE).ts-tmp
|
||||
+ /usr/bin/kmk_sed -e 's/ *$(DOLLAR)//g' -e '/^$(DOLLAR)/d' --output $(VBOX_XIDL_FILE).ts $(VBOX_XIDL_FILE).ts-tmp
|
||||
$(QUIET)$(RM) -- $(VBOX_XIDL_FILE).ts-tmp
|
||||
$(QUIET)$(CP) --changed -fv -- $(VBOX_XIDL_FILE).ts $(VBOX_XIDL_FILE)
|
||||
|
||||
Index: VirtualBox-7.0.14/src/VBox/Runtime/Makefile.kmk
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Runtime/Makefile.kmk
|
||||
+++ VirtualBox-7.0.14/src/VBox/Runtime/Makefile.kmk
|
||||
@@ -4421,6 +4421,7 @@ $(foreach lib,RuntimeR3 RuntimeBldProg V
|
||||
#
|
||||
# Generate the status code data.
|
||||
#
|
||||
+SED = "/usr/bin/kmk_sed"
|
||||
$(IPRT_OUT_DIR)/errmsgdata.h: \
|
||||
$(VBOX_PATH_RUNTIME_SRC)/common/err/errmsg.sed \
|
||||
$(PATH_ROOT)/include/iprt/err.h \
|
||||
Index: VirtualBox-7.0.14/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h
|
||||
+++ VirtualBox-7.0.14/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h
|
||||
@@ -147,9 +147,9 @@
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/completion.h>
|
||||
#include <linux/compiler.h>
|
||||
-#if RTLNX_VER_MIN(5,9,0) || RTLNX_SUSE_MAJ_PREREQ(15,3) /* linux/fs.h defined HAVE_UNLOCKED_IOCTL from 2.6.11 up to 5.9 (also 5.3.18-56 in SLES15-SP3), when it became an implicit assumption. */
|
||||
+//#if RTLNX_VER_MIN(5,9,0) || RTLNX_SUSE_MAJ_PREREQ(15,3) /* linux/fs.h defined HAVE_UNLOCKED_IOCTL from 2.6.11 up to 5.9 (also 5.3.18-56 in SLES15-SP3), when it became an implicit assumption. */
|
||||
# define HAVE_UNLOCKED_IOCTL 1 /* We use this in a couple of places, so for now just define it for 5.9+ too. */
|
||||
-#endif
|
||||
+//#endif
|
||||
#if !defined(HAVE_UNLOCKED_IOCTL) && RTLNX_VER_MAX(2,6,38)
|
||||
# include <linux/smp_lock.h>
|
||||
#endif
|
||||
Index: VirtualBox-7.0.14/src/libs/xpcom18a4/python/src/PyXPCOM.h
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/libs/xpcom18a4/python/src/PyXPCOM.h
|
||||
+++ VirtualBox-7.0.14/src/libs/xpcom18a4/python/src/PyXPCOM.h
|
||||
@@ -191,7 +191,7 @@ extern "C" PyAPI_FUNC(const char *) PyUn
|
||||
# endif
|
||||
|
||||
/* PyUnicode_AsUTF8 is just PyUnicode_AsUTF8AndSize without returning a size. */
|
||||
-# define PyUnicode_AsUTF8(o) PyUnicode_AsUTF8AndSize(o, NULL)
|
||||
+// # define PyUnicode_AsUTF8(o) (const char *)PyUnicode_AsUTF8AndSize(o, NULL)
|
||||
|
||||
DECLINLINE(int) PyRun_SimpleString(const char *pszCode)
|
||||
{
|
||||
Index: VirtualBox-7.0.14/src/libs/xpcom18a4/python/src/ErrorUtils.cpp
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/libs/xpcom18a4/python/src/ErrorUtils.cpp
|
||||
+++ VirtualBox-7.0.14/src/libs/xpcom18a4/python/src/ErrorUtils.cpp
|
||||
@@ -121,7 +121,7 @@ void DoLogMessage(const char *methodName
|
||||
#if PY_MAJOR_VERSION <= 2
|
||||
c += PyString_AsString(repr);
|
||||
#else
|
||||
- c += PyUnicode_AsUTF8(repr);
|
||||
+ c += PyUnicode_AsUTF8AndSize(repr, NULL);
|
||||
#endif
|
||||
Py_DECREF(repr);
|
||||
}
|
||||
@@ -203,7 +203,7 @@ PRBool PyXPCOM_FormatGivenException(nsCS
|
||||
#if PY_MAJOR_VERSION <= 2
|
||||
streamout += PyString_AsString(temp);
|
||||
#else
|
||||
- streamout += PyUnicode_AsUTF8(temp);
|
||||
+ streamout += PyUnicode_AsUTF8AndSize(temp, NULL);
|
||||
#endif
|
||||
Py_DECREF(temp);
|
||||
} else
|
||||
@@ -215,7 +215,7 @@ PRBool PyXPCOM_FormatGivenException(nsCS
|
||||
#if PY_MAJOR_VERSION <= 2
|
||||
streamout += PyString_AsString(temp);
|
||||
#else
|
||||
- streamout += PyUnicode_AsUTF8(temp);
|
||||
+ streamout += PyUnicode_AsUTF8AndSize(temp, NULL);
|
||||
#endif
|
||||
Py_DECREF(temp);
|
||||
} else
|
||||
@@ -440,10 +440,10 @@ char *PyTraceback_AsString(PyObject *exc
|
||||
#if PY_MAJOR_VERSION <= 2
|
||||
char *tempResult = (char *)PyString_AsString(obResult);
|
||||
#elif PY_MINOR_VERSION <= 6
|
||||
- char *tempResult = (char *)PyUnicode_AsUTF8(obResult);
|
||||
+ char *tempResult = (char *)PyUnicode_AsUTF8AndSize(obResult, NULL);
|
||||
#else
|
||||
/* PyUnicode_AsUTF8() is const char * as of Python 3.7, char * earlier. */
|
||||
- const char *tempResult = (const char *)PyUnicode_AsUTF8(obResult);
|
||||
+ const char *tempResult = (const char *)PyUnicode_AsUTF8AndSize(obResult, NULL);
|
||||
#endif
|
||||
result = (char *)PyMem_Malloc(strlen(tempResult)+1);
|
||||
if (result==NULL)
|
||||
Index: VirtualBox-7.0.14/src/libs/xpcom18a4/python/src/PyGBase.cpp
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/libs/xpcom18a4/python/src/PyGBase.cpp
|
||||
+++ VirtualBox-7.0.14/src/libs/xpcom18a4/python/src/PyGBase.cpp
|
||||
@@ -117,7 +117,7 @@ PyG_Base::PyG_Base(PyObject *instance, c
|
||||
#if PY_MAJOR_VERSION <= 2
|
||||
szRepr = PyString_AsString(r);
|
||||
#else
|
||||
- szRepr = PyUnicode_AsUTF8(r);
|
||||
+ szRepr = PyUnicode_AsUTF8AndSize(r, NULL);
|
||||
#endif
|
||||
if (szRepr==NULL) szRepr = "";
|
||||
int reprOffset = *szRepr=='<' ? 1 : 0;
|
||||
Index: VirtualBox-7.0.14/src/libs/xpcom18a4/python/src/PyIID.cpp
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/libs/xpcom18a4/python/src/PyIID.cpp
|
||||
+++ VirtualBox-7.0.14/src/libs/xpcom18a4/python/src/PyIID.cpp
|
||||
@@ -137,7 +137,7 @@ Py_nsIID::IIDFromPyObject(PyObject *ob,
|
||||
ok = iid.Parse(PyString_AsString(ob));
|
||||
#else
|
||||
if (PyUnicode_Check(ob)) {
|
||||
- ok = iid.Parse(PyUnicode_AsUTF8(ob));
|
||||
+ ok = iid.Parse(PyUnicode_AsUTF8AndSize(ob, NULL));
|
||||
#endif
|
||||
if (!ok) {
|
||||
PyXPCOM_BuildPyException(NS_ERROR_ILLEGAL_VALUE);
|
||||
Index: VirtualBox-7.0.14/src/libs/xpcom18a4/python/src/VariantUtils.cpp
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/libs/xpcom18a4/python/src/VariantUtils.cpp
|
||||
+++ VirtualBox-7.0.14/src/libs/xpcom18a4/python/src/VariantUtils.cpp
|
||||
@@ -141,7 +141,7 @@ PyObject *PyObject_FromNSString( const n
|
||||
#if PY_MAJOR_VERSION <= 2
|
||||
char* dest = (char *)PyString_AS_STRING(ret);
|
||||
#else
|
||||
- char* dest = (char *)PyUnicode_AsUTF8(ret);
|
||||
+ char* dest = (char *)PyUnicode_AsUTF8AndSize(ret, NULL);
|
||||
#endif
|
||||
copy_string(s.BeginReading(fromBegin), s.EndReading(fromEnd), dest);
|
||||
}
|
||||
@@ -393,7 +393,7 @@ PRBool FillSingleArray(void *array_ptr,
|
||||
#if PY_MAJOR_VERSION <= 2
|
||||
sequence_ob = PyObject_Str(sequence_ob);
|
||||
#else
|
||||
- sequence_ob = PyUnicode_AsUTF8String(sequence_ob);
|
||||
+ sequence_ob = (PyObject *)PyUnicode_AsUTF8AndSize(sequence_ob, NULL);
|
||||
#endif
|
||||
} else
|
||||
release_seq = PR_FALSE;
|
||||
@@ -402,7 +402,7 @@ PRBool FillSingleArray(void *array_ptr,
|
||||
#if PY_MAJOR_VERSION <= 2
|
||||
memcpy(pthis, PyString_AS_STRING(sequence_ob), sequence_size);
|
||||
#else
|
||||
- memcpy(pthis, PyUnicode_AsUTF8(sequence_ob), sequence_size);
|
||||
+ memcpy(pthis, PyUnicode_AsUTF8AndSize(sequence_ob, NULL), sequence_size);
|
||||
#endif
|
||||
if (release_seq)
|
||||
{
|
||||
@@ -477,7 +477,7 @@ PRBool FillSingleArray(void *array_ptr,
|
||||
PyErr_SetString(PyExc_TypeError, "This parameter must be a unicode object");
|
||||
BREAK_FALSE;
|
||||
}
|
||||
- FILL_SIMPLE_POINTER( char, *PyUnicode_AsUTF8(val) );
|
||||
+ FILL_SIMPLE_POINTER( char, *PyUnicode_AsUTF8AndSize(val, NULL) );
|
||||
#endif
|
||||
break;
|
||||
|
||||
@@ -549,7 +549,7 @@ PRBool FillSingleArray(void *array_ptr,
|
||||
PyErr_SetString(PyExc_TypeError, "This parameter must be a unicode object");
|
||||
BREAK_FALSE;
|
||||
}
|
||||
- if ((val_use = PyUnicode_AsUTF8String(val))==NULL)
|
||||
+ if ((val_use = (PyObject *)PyUnicode_AsUTF8AndSize(val, NULL))==NULL)
|
||||
BREAK_FALSE;
|
||||
|
||||
const char *sz = PyBytes_AS_STRING(val_use);
|
||||
Index: VirtualBox-7.0.14/src/VBox/Frontends/VBoxSDL/VBoxSDL.cpp
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Frontends/VBoxSDL/VBoxSDL.cpp
|
||||
+++ VirtualBox-7.0.14/src/VBox/Frontends/VBoxSDL/VBoxSDL.cpp
|
||||
@@ -710,7 +710,7 @@ static const char *keyModToStr(unsigned
|
||||
RT_CASE_RET_STR(KMOD_NUM);
|
||||
RT_CASE_RET_STR(KMOD_CAPS);
|
||||
RT_CASE_RET_STR(KMOD_MODE);
|
||||
- RT_CASE_RET_STR(KMOD_SCROLL);
|
||||
+ RT_CASE_RET_STR(KMOD_RESERVED);
|
||||
default:
|
||||
break;
|
||||
}
|
||||
Index: VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_drv.h
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Additions/linux/drm/vbox_drv.h
|
||||
+++ VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_drv.h
|
||||
@@ -39,6 +39,7 @@
|
||||
# pragma once
|
||||
#endif
|
||||
|
||||
+
|
||||
#include <linux/version.h>
|
||||
|
||||
/* iprt/linux/version.h copy - start */
|
||||
Index: VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_ttm.c
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Additions/linux/drm/vbox_ttm.c
|
||||
+++ VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_ttm.c
|
||||
@@ -38,6 +38,10 @@
|
||||
# include <drm/ttm/ttm_tt.h>
|
||||
#endif
|
||||
|
||||
+# if defined(CONFIG_SUSE_VERSION) && CONFIG_SUSE_VERSION == 15 && CONFIG_SUSE_PATCHLEVEL == 5
|
||||
+# define OPENSUSE_155
|
||||
+# endif
|
||||
+
|
||||
#if RTLNX_VER_MIN(5,11,0) || RTLNX_RHEL_MAJ_PREREQ(8,5)
|
||||
# include <drm/drm_gem.h>
|
||||
# include <drm/drm_gem_ttm_helper.h>
|
||||
@@ -330,11 +334,9 @@ static struct ttm_tt *vbox_ttm_tt_create
|
||||
#else
|
||||
if (ttm_tt_init(tt, bdev, size, page_flags, dummy_read_page)) {
|
||||
#endif
|
||||
-
|
||||
kfree(tt);
|
||||
return NULL;
|
||||
}
|
||||
-
|
||||
return tt;
|
||||
}
|
||||
|
||||
Index: VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_fb.c
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Additions/linux/drm/vbox_fb.c
|
||||
+++ VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_fb.c
|
||||
@@ -47,6 +47,7 @@
|
||||
#include <drm/drm_crtc.h>
|
||||
#include <drm/drm_fb_helper.h>
|
||||
#include <drm/drm_crtc_helper.h>
|
||||
+#include <drm/drm_framebuffer.h>
|
||||
|
||||
#include <VBoxVideo.h>
|
||||
|
||||
@@ -196,7 +197,7 @@ static struct fb_ops vboxfb_ops = {
|
||||
.owner = THIS_MODULE,
|
||||
.fb_check_var = drm_fb_helper_check_var,
|
||||
.fb_set_par = drm_fb_helper_set_par,
|
||||
-#if RTLNX_VER_MIN(6,5,0) || RTLNX_RHEL_RANGE(9,4, 9,99)
|
||||
+#if RTLNX_VER_MIN(6, 4, 0) || RTLNX_RHEL_RANGE(9,4, 9,99)
|
||||
.fb_read = fb_sys_read,
|
||||
.fb_write = fb_sys_write,
|
||||
.fb_fillrect = sys_fillrect,
|
||||
@@ -351,7 +352,7 @@ static int vboxfb_create(struct drm_fb_h
|
||||
* The last flag forces a mode set on VT switches even if the kernel
|
||||
* does not think it is needed.
|
||||
*/
|
||||
-#if RTLNX_VER_MIN(6,6,0)
|
||||
+#if RTLNX_VER_MIN(6,4,0)
|
||||
info->flags = FBINFO_MISC_ALWAYS_SETPAR;
|
||||
#else
|
||||
info->flags = FBINFO_DEFAULT | FBINFO_MISC_ALWAYS_SETPAR;
|
||||
Index: VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_mode.c
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Additions/linux/drm/vbox_mode.c
|
||||
+++ VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_mode.c
|
||||
@@ -53,6 +53,7 @@
|
||||
#if RTLNX_VER_MIN(6,0,0) || RTLNX_RHEL_RANGE(8,8, 8,99) || RTLNX_RHEL_MAJ_PREREQ(9,2) || RTLNX_SUSE_MAJ_PREREQ(15,5)
|
||||
# include <drm/drm_edid.h>
|
||||
#endif
|
||||
+#include <drm/drm_edid.h>
|
||||
|
||||
#include "VBoxVideo.h"
|
||||
|
||||
Index: VirtualBox-7.0.14/src/VBox/HostDrivers/VBoxNetAdp/linux/VBoxNetAdp-linux.c
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/HostDrivers/VBoxNetAdp/linux/VBoxNetAdp-linux.c
|
||||
+++ VirtualBox-7.0.14/src/VBox/HostDrivers/VBoxNetAdp/linux/VBoxNetAdp-linux.c
|
||||
@@ -77,7 +77,7 @@
|
||||
#define VBOXNETADP_FROM_IFACE(iface) ((PVBOXNETADP) ifnet_softc(iface))
|
||||
|
||||
/** Set netdev MAC address. */
|
||||
-#if RTLNX_VER_MIN(5,17,0)
|
||||
+#if RTLNX_VER_MIN(5,17,0) || RTLNX_SUSE_MAJ_PREREQ(15,5)
|
||||
# define VBOX_DEV_ADDR_SET(dev, addr, len) dev_addr_mod(dev, 0, addr, len)
|
||||
#else /* < 5.17.0 */
|
||||
# define VBOX_DEV_ADDR_SET(dev, addr, len) memcpy(dev->dev_addr, addr, len)
|
||||
Index: VirtualBox-7.0.14/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c
|
||||
+++ VirtualBox-7.0.14/src/VBox/Runtime/r0drv/linux/memobj-r0drv-linux.c
|
||||
@@ -1342,7 +1342,7 @@ DECLHIDDEN(int) rtR0MemObjNativeLockUser
|
||||
fWrite, /* force write access. */
|
||||
# endif
|
||||
&pMemLnx->apPages[0] /* Page array. */
|
||||
-# if GET_USER_PAGES_API < KERNEL_VERSION(6, 5, 0)
|
||||
+# if GET_USER_PAGES_API < KERNEL_VERSION(6, 5, 0) && !RTLNX_SUSE_MAJ_PREREQ(15, 6)
|
||||
, papVMAs /* vmas */
|
||||
# endif
|
||||
);
|
||||
@@ -1389,7 +1389,7 @@ DECLHIDDEN(int) rtR0MemObjNativeLockUser
|
||||
fWrite, /* force write access. */
|
||||
# endif
|
||||
&pMemLnx->apPages[0] /* Page array. */
|
||||
-# if GET_USER_PAGES_API < KERNEL_VERSION(6, 5, 0)
|
||||
+# if GET_USER_PAGES_API < KERNEL_VERSION(6, 5, 0) && && !defined(OPENSUSE_156)
|
||||
, papVMAs /* vmas */
|
||||
# endif
|
||||
);
|
||||
Index: VirtualBox-7.0.14/src/VBox/Additions/linux/sharedfolders/regops.c
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Additions/linux/sharedfolders/regops.c
|
||||
+++ VirtualBox-7.0.14/src/VBox/Additions/linux/sharedfolders/regops.c
|
||||
@@ -270,8 +270,12 @@ static ssize_t vbsf_iov_iter_get_pages(s
|
||||
size_t cPagesLocked;
|
||||
|
||||
down_read(&pTask->mm->mmap_sem);
|
||||
- cPagesLocked = get_user_pages(pTask, pTask->mm, uPtrFrom, cPages, iter->v_write, 1 /*force*/, papPages, NULL);
|
||||
- up_read(&pTask->mm->mmap_sem);
|
||||
+#if defined(OPENSUSE_156)
|
||||
+ cPagesLocked = get_user_pages(pTask, pTask->mm, uPtrFrom, cPages);
|
||||
+#else
|
||||
+ cPagesLocked = get_user_pages(pTask, pTask->mm, uPtrFrom, cPages, iter->v_write, 1 /*force*/, papPages, NULL);
|
||||
+#endif
|
||||
+ up_read(&pTask->mm->mmap_sem);
|
||||
if (cPagesLocked == cPages) {
|
||||
size_t cbRet = (cPages << PAGE_SHIFT) - offPg0;
|
||||
if (cPages == cPagesLeft) {
|
@ -1,826 +0,0 @@
|
||||
Index: VirtualBox-7.0.14/src/VBox/HostDrivers/linux/Makefile
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/HostDrivers/linux/Makefile
|
||||
+++ VirtualBox-7.0.14/src/VBox/HostDrivers/linux/Makefile
|
||||
@@ -43,11 +43,8 @@ obj-m = vboxdrv/
|
||||
obj-m += vboxnetflt/
|
||||
endif
|
||||
ifneq ($(wildcard $(CURDIR)/vboxnetadp/Makefile),)
|
||||
-obj-m += vboxnetadp/
|
||||
- endif
|
||||
- ifneq ($(wildcard $(CURDIR)/vboxpci/Makefile),)
|
||||
-obj-m += vboxpci/
|
||||
- endif
|
||||
+ obj-m += vboxnetadp/
|
||||
+endif
|
||||
|
||||
else # ! KERNELRELEASE
|
||||
|
||||
@@ -62,12 +59,14 @@ SUDO :=
|
||||
endif
|
||||
|
||||
KBUILD_VERBOSE ?=
|
||||
+PWD ?= $(shell pwd)
|
||||
+
|
||||
.PHONY: all install clean check unload load \
|
||||
- vboxdrv vboxnetflt vboxnetadp vboxpci \
|
||||
- install-vboxdrv install-vboxnetflt install-vboxnetadp install-vboxpci \
|
||||
- clean-vboxdrv clean-vboxnetflt clean-vboxnetadp clean-vboxpci
|
||||
+ vboxdrv vboxnetflt vboxnetadp \
|
||||
+ install-vboxdrv install-vboxnetflt install-vboxnetadp \
|
||||
+ clean-vboxdrv clean-vboxnetflt clean-vboxnetadp
|
||||
|
||||
-all: vboxdrv vboxnetflt vboxnetadp vboxpci
|
||||
+all: vboxdrv vboxnetflt vboxnetadp
|
||||
|
||||
# We want to build on Linux 2.6.18 and later kernels.
|
||||
KERN_VER ?= $(shell uname -r)
|
||||
@@ -81,56 +80,38 @@ vboxdrv:
|
||||
|
||||
vboxnetflt: vboxdrv
|
||||
+@if [ -d vboxnetflt ]; then \
|
||||
- if [ -f vboxdrv/Module.symvers ]; then \
|
||||
- cp vboxdrv/Module.symvers vboxnetflt; \
|
||||
- fi; \
|
||||
+ export KBUILD_EXTRA_SYMBOLS=${PWD}/vboxdrv/Module.symvers; \
|
||||
echo "=== Building 'vboxnetflt' module ==="; \
|
||||
- $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) KBUILD_EXTRA_SYMBOLS=$(abspath vboxnetflt/Module.symvers) -C vboxnetflt || exit 1; \
|
||||
+ $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) KBUILD_EXTRA_SYMBOLS=$(abspath vboxdrv/Module.symvers) -C vboxnetflt || exit 1; \
|
||||
cp vboxnetflt/vboxnetflt.ko .; \
|
||||
echo; \
|
||||
fi
|
||||
|
||||
vboxnetadp: vboxdrv
|
||||
+@if [ -d vboxnetadp ]; then \
|
||||
- if [ -f vboxdrv/Module.symvers ]; then \
|
||||
- cp vboxdrv/Module.symvers vboxnetadp; \
|
||||
- fi; \
|
||||
+ export KBUILD_EXTRA_SYMBOLS=${PWD}/vboxdrv/Module.symvers; \
|
||||
echo "=== Building 'vboxnetadp' module ==="; \
|
||||
- $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) KBUILD_EXTRA_SYMBOLS=$(abspath vboxnetadp/Module.symvers) -C vboxnetadp || exit 1; \
|
||||
+ $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) KBUILD_EXTRA_SYMBOLS=$(abspath vboxdrv/Module.symvers) -C vboxnetadp || exit 1; \
|
||||
cp vboxnetadp/vboxnetadp.ko .; \
|
||||
echo; \
|
||||
fi
|
||||
|
||||
-vboxpci: vboxdrv
|
||||
- +@if [ -d vboxpci ]; then \
|
||||
- if [ -f vboxdrv/Module.symvers ]; then \
|
||||
- cp vboxdrv/Module.symvers vboxpci; \
|
||||
- fi; \
|
||||
- echo "=== Building 'vboxpci' module ==="; \
|
||||
- $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) KBUILD_EXTRA_SYMBOLS=$(abspath vboxpci/Module.symvers) -C vboxpci || exit 1; \
|
||||
- cp vboxpci/vboxpci.ko .; \
|
||||
- echo; \
|
||||
- fi
|
||||
-
|
||||
install-vboxdrv:
|
||||
+@$(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxdrv install
|
||||
|
||||
install-vboxnetflt:
|
||||
+@if [ -d vboxnetflt ]; then \
|
||||
+ export KBUILD_EXTRA_SYMBOLS=${PWD}/vboxdrv/Module.symvers; \
|
||||
$(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxnetflt install; \
|
||||
fi
|
||||
|
||||
install-vboxnetadp:
|
||||
+@if [ -d vboxnetadp ]; then \
|
||||
+ export KBUILD_EXTRA_SYMBOLS=${PWD}/vboxdrv/Module.symvers; \
|
||||
$(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxnetadp install; \
|
||||
fi
|
||||
|
||||
-install-vboxpci:
|
||||
- +@if [ -d vboxpci ]; then \
|
||||
- $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxpci install; \
|
||||
- fi
|
||||
-
|
||||
-install: install-vboxdrv install-vboxnetflt install-vboxnetadp install-vboxpci
|
||||
+install: install-vboxdrv install-vboxnetflt install-vboxnetadp
|
||||
|
||||
# Look for wrapper modules, sorting them so vmmr0 is first.
|
||||
VBOX_WRAPPER_DIRS := $(notdir $(wildcard $(CURDIR)/vbox_*))
|
||||
@@ -140,6 +121,9 @@ VBOX_WRAPPER_DIRS := $(filter vbox_vmmr0
|
||||
define wrapper_template
|
||||
$(wrapper): $(subst $(wrapper),,vbox_vmmr0)
|
||||
+$$(MAKE) KBUILD_VERBOSE=$$(KBUILD_VERBOSE) -C $(wrapper)/
|
||||
+vboxnetflt:
|
||||
+vboxnetadp:
|
||||
+install:
|
||||
|
||||
load-$(wrapper): $(subst load-$(wrapper),,load-vbox_vmmr0)
|
||||
@if ! grep -q "^$(wrapper) " /proc/modules; then \
|
||||
@@ -217,19 +201,13 @@ clean-vboxnetadp:
|
||||
fi
|
||||
rm -rf vboxnetadp.ko
|
||||
|
||||
-clean-vboxpci:
|
||||
- +@if [ -d vboxpci ]; then \
|
||||
- $(MAKE) -C vboxpci clean; \
|
||||
- fi
|
||||
- rm -f vboxpci.ko
|
||||
-
|
||||
-clean: clean-vboxdrv clean-vboxnetflt clean-vboxnetadp clean-vboxpci
|
||||
+clean: clean-vboxdrv clean-vboxnetflt clean-vboxnetadp
|
||||
|
||||
check:
|
||||
+@$(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxdrv check
|
||||
|
||||
unload:
|
||||
- @for module in vboxpci vboxnetadp vboxnetflt vboxdrv; do \
|
||||
+ @for module in vboxnetadp vboxnetflt vboxdrv; do \
|
||||
if grep "^$$module " /proc/modules >/dev/null; then \
|
||||
echo "Removing previously installed $$module module"; \
|
||||
$(SUDO) /sbin/rmmod $$module; \
|
||||
@@ -237,7 +215,7 @@ unload:
|
||||
done
|
||||
|
||||
load: unload
|
||||
- @for module in vboxdrv vboxnetflt vboxnetadp vboxpci; do \
|
||||
+ @for module in vboxdrv vboxnetflt vboxnetadp; do \
|
||||
if test -f $$module.ko; then \
|
||||
echo "Installing $$module module"; \
|
||||
$(SUDO) /sbin/insmod $$module.ko; \
|
||||
Index: VirtualBox-7.0.14/src/VBox/Additions/linux/Makefile
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Additions/linux/Makefile
|
||||
+++ VirtualBox-7.0.14/src/VBox/Additions/linux/Makefile
|
||||
@@ -34,6 +34,7 @@ obj-m = vboxguest/ vboxsf/ vboxvideo/
|
||||
else # ! KERNELRELEASE
|
||||
|
||||
KBUILD_VERBOSE =
|
||||
+PWD ?= $(shell pwd)
|
||||
ifeq ($(KBUILD_VERBOSE),)
|
||||
VBOX_QUIET := @
|
||||
VBOX_QUIET_SH := @
|
||||
@@ -59,6 +60,7 @@ vboxsf: vboxguest
|
||||
if [ -f vboxguest/Module.symvers ]; then \
|
||||
cp vboxguest/Module.symvers vboxsf; \
|
||||
fi; \
|
||||
+ export KBUILD_EXTRA_SYMBOLS=${PWD}/vboxvideo/Module.symvers; \
|
||||
echo "=== Building 'vboxsf' module ==="; \
|
||||
$(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) KBUILD_EXTRA_SYMBOLS=$(abspath vboxsf/Module.symvers) -C vboxsf || exit 1; \
|
||||
if [ -f vboxsf/vboxsf.ko ]; then \
|
||||
@@ -71,6 +73,9 @@ vboxsf: vboxguest
|
||||
|
||||
vboxvideo:
|
||||
+ $(VBOX_QUIET_SH)if [ -d vboxvideo ]; then \
|
||||
+ if [ -f vboxguest/Module.symvers ]; then \
|
||||
+ cp vboxguest/Module.symvers vboxvideo; \
|
||||
+ fi; \
|
||||
echo "=== Building 'vboxvideo' module ==="; \
|
||||
$(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxvideo || exit 1; \
|
||||
if [ -f vboxvideo/vboxvideo.ko ]; then \
|
||||
@@ -86,11 +91,13 @@ install-vboxguest:
|
||||
|
||||
install-vboxsf:
|
||||
+ $(VBOX_QUIET_SH)if [ -d vboxsf ]; then \
|
||||
+ export KBUILD_EXTRA_SYMBOLS=${PWD}/vboxsf/Module.symvers; \
|
||||
$(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxsf install; \
|
||||
fi
|
||||
|
||||
install-vboxvideo:
|
||||
+ $(VBOX_QUIET_SH)if [ -d vboxvideo ]; then \
|
||||
+ export KBUILD_EXTRA_SYMBOLS=${PWD}/vboxvideo/Module.symvers; \
|
||||
$(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxvideo install; \
|
||||
fi
|
||||
|
||||
Index: VirtualBox-7.0.14/include/iprt/x86.h
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/include/iprt/x86.h
|
||||
+++ VirtualBox-7.0.14/include/iprt/x86.h
|
||||
@@ -937,37 +937,59 @@ typedef const X86CPUIDFEATEDX *PCX86CPUI
|
||||
* reserved flags.
|
||||
* @{ */
|
||||
/** Bit 0 - PE - Protection Enabled */
|
||||
+#ifndef X86_CR0_PE
|
||||
#define X86_CR0_PE RT_BIT_32(0)
|
||||
+#endif
|
||||
#define X86_CR0_PROTECTION_ENABLE RT_BIT_32(0)
|
||||
/** Bit 1 - MP - Monitor Coprocessor */
|
||||
+#ifndef X86_CR0_MP
|
||||
#define X86_CR0_MP RT_BIT_32(1)
|
||||
+#endif
|
||||
#define X86_CR0_MONITOR_COPROCESSOR RT_BIT_32(1)
|
||||
/** Bit 2 - EM - Emulation. */
|
||||
+#ifndef X86_CR0_EM
|
||||
#define X86_CR0_EM RT_BIT_32(2)
|
||||
+#endif
|
||||
#define X86_CR0_EMULATE_FPU RT_BIT_32(2)
|
||||
/** Bit 3 - TS - Task Switch. */
|
||||
+#ifndef X86_CR0_TS
|
||||
#define X86_CR0_TS RT_BIT_32(3)
|
||||
+#endif
|
||||
#define X86_CR0_TASK_SWITCH RT_BIT_32(3)
|
||||
/** Bit 4 - ET - Extension flag. (386, 'hardcoded' to 1 on 486+) */
|
||||
+#ifndef X86_CR0_ET
|
||||
#define X86_CR0_ET RT_BIT_32(4)
|
||||
+#endif
|
||||
#define X86_CR0_EXTENSION_TYPE RT_BIT_32(4)
|
||||
/** Bit 5 - NE - Numeric error (486+). */
|
||||
+#ifndef X86_CR0_NE
|
||||
#define X86_CR0_NE RT_BIT_32(5)
|
||||
+#endif
|
||||
#define X86_CR0_NUMERIC_ERROR RT_BIT_32(5)
|
||||
/** Bit 16 - WP - Write Protect (486+). */
|
||||
+#ifndef X86_CR0_WP
|
||||
#define X86_CR0_WP RT_BIT_32(16)
|
||||
+#endif
|
||||
#define X86_CR0_WRITE_PROTECT RT_BIT_32(16)
|
||||
/** Bit 18 - AM - Alignment Mask (486+). */
|
||||
+#ifndef X86_CR0_AM
|
||||
#define X86_CR0_AM RT_BIT_32(18)
|
||||
+#endif
|
||||
#define X86_CR0_ALIGMENT_MASK RT_BIT_32(18)
|
||||
/** Bit 29 - NW - Not Write-though (486+). */
|
||||
+#ifndef X86_CR0_NW
|
||||
#define X86_CR0_NW RT_BIT_32(29)
|
||||
+#endif
|
||||
#define X86_CR0_NOT_WRITE_THROUGH RT_BIT_32(29)
|
||||
/** Bit 30 - WP - Cache Disable (486+). */
|
||||
+#ifndef X86_CR0_CD
|
||||
#define X86_CR0_CD RT_BIT_32(30)
|
||||
+#endif
|
||||
#define X86_CR0_CACHE_DISABLE RT_BIT_32(30)
|
||||
/** Bit 31 - PG - Paging. */
|
||||
+#ifndef X86_CR0_PG
|
||||
#define X86_CR0_PG RT_BIT_32(31)
|
||||
+#endif
|
||||
#define X86_CR0_PAGING RT_BIT_32(31)
|
||||
#define X86_CR0_BIT_PG 31 /**< Bit number of X86_CR0_PG */
|
||||
/** @} */
|
||||
@@ -976,9 +998,13 @@ typedef const X86CPUIDFEATEDX *PCX86CPUI
|
||||
/** @name CR3
|
||||
* @{ */
|
||||
/** Bit 3 - PWT - Page-level Writes Transparent. */
|
||||
+#ifndef X86_CR3_PWT
|
||||
#define X86_CR3_PWT RT_BIT_32(3)
|
||||
+#endif
|
||||
/** Bit 4 - PCD - Page-level Cache Disable. */
|
||||
+#ifndef X86_CR3_PCD
|
||||
#define X86_CR3_PCD RT_BIT_32(4)
|
||||
+#endif
|
||||
/** Bits 12-31 - - Page directory page number. */
|
||||
#define X86_CR3_PAGE_MASK (0xfffff000)
|
||||
/** Bits 5-31 - - PAE Page directory page number. */
|
||||
@@ -997,46 +1023,84 @@ typedef const X86CPUIDFEATEDX *PCX86CPUI
|
||||
/** @name CR4
|
||||
* @{ */
|
||||
/** Bit 0 - VME - Virtual-8086 Mode Extensions. */
|
||||
+#ifndef X86_CR4_VME
|
||||
#define X86_CR4_VME RT_BIT_32(0)
|
||||
+#endif
|
||||
/** Bit 1 - PVI - Protected-Mode Virtual Interrupts. */
|
||||
+#ifndef X86_CR4_PVI
|
||||
#define X86_CR4_PVI RT_BIT_32(1)
|
||||
+#endif
|
||||
/** Bit 2 - TSD - Time Stamp Disable. */
|
||||
+#ifndef X86_CR4_TSD
|
||||
#define X86_CR4_TSD RT_BIT_32(2)
|
||||
+#endif
|
||||
/** Bit 3 - DE - Debugging Extensions. */
|
||||
+#ifndef X86_CR4_DE
|
||||
#define X86_CR4_DE RT_BIT_32(3)
|
||||
+#endif
|
||||
/** Bit 4 - PSE - Page Size Extension. */
|
||||
+#ifndef X86_CR4_PSE
|
||||
#define X86_CR4_PSE RT_BIT_32(4)
|
||||
+#endif
|
||||
/** Bit 5 - PAE - Physical Address Extension. */
|
||||
+#ifndef X86_CR4_PAE
|
||||
#define X86_CR4_PAE RT_BIT_32(5)
|
||||
+#endif
|
||||
/** Bit 6 - MCE - Machine-Check Enable. */
|
||||
+#ifndef X86_CR4_MCE
|
||||
#define X86_CR4_MCE RT_BIT_32(6)
|
||||
+#endif
|
||||
/** Bit 7 - PGE - Page Global Enable. */
|
||||
+#ifndef X86_CR4_PGE
|
||||
#define X86_CR4_PGE RT_BIT_32(7)
|
||||
+#endif
|
||||
/** Bit 8 - PCE - Performance-Monitoring Counter Enable. */
|
||||
+#ifndef X86_CR4_PCE
|
||||
#define X86_CR4_PCE RT_BIT_32(8)
|
||||
+#endif
|
||||
/** Bit 9 - OSFXSR - Operating System Support for FXSAVE and FXRSTORE instructions. */
|
||||
+#ifndef X86_CR4_OSFXSR
|
||||
#define X86_CR4_OSFXSR RT_BIT_32(9)
|
||||
+#endif
|
||||
/** Bit 10 - OSXMMEEXCPT - Operating System Support for Unmasked SIMD Floating-Point Exceptions. */
|
||||
#define X86_CR4_OSXMMEEXCPT RT_BIT_32(10)
|
||||
/** Bit 11 - UMIP - User-Mode Instruction Prevention. */
|
||||
+#ifndef X86_CR4_UMIP
|
||||
#define X86_CR4_UMIP RT_BIT_32(11)
|
||||
+#endif
|
||||
/** Bit 13 - VMXE - VMX mode is enabled. */
|
||||
+#ifndef X86_CR4_VMXE
|
||||
#define X86_CR4_VMXE RT_BIT_32(13)
|
||||
+#endif
|
||||
/** Bit 14 - SMXE - Safer Mode Extensions Enabled. */
|
||||
+#ifndef X86_CR4_SMXE
|
||||
#define X86_CR4_SMXE RT_BIT_32(14)
|
||||
+#endif
|
||||
/** Bit 16 - FSGSBASE - Read/write FSGSBASE instructions Enable. */
|
||||
+#ifndef X86_CR4_FSGSBASE
|
||||
#define X86_CR4_FSGSBASE RT_BIT_32(16)
|
||||
+#endif
|
||||
/** Bit 17 - PCIDE - Process-Context Identifiers Enabled. */
|
||||
+#ifndef X86_CR4_PCIDE
|
||||
#define X86_CR4_PCIDE RT_BIT_32(17)
|
||||
+#endif
|
||||
/** Bit 18 - OSXSAVE - Operating System Support for XSAVE and processor
|
||||
* extended states. */
|
||||
+#ifndef X86_CR4_OSXSAVE
|
||||
#define X86_CR4_OSXSAVE RT_BIT_32(18)
|
||||
+#endif
|
||||
/** Bit 20 - SMEP - Supervisor-mode Execution Prevention enabled. */
|
||||
+#ifndef X86_CR4_SMEP
|
||||
#define X86_CR4_SMEP RT_BIT_32(20)
|
||||
+#endif
|
||||
/** Bit 21 - SMAP - Supervisor-mode Access Prevention enabled. */
|
||||
+#ifndef X86_CR4_SMAP
|
||||
#define X86_CR4_SMAP RT_BIT_32(21)
|
||||
+#endif
|
||||
/** Bit 22 - PKE - Protection Key Enable. */
|
||||
+#ifndef X86_CR4_PKE
|
||||
#define X86_CR4_PKE RT_BIT_32(22)
|
||||
+#endif
|
||||
/** Bit 23 - CET - Control-flow Enhancement Technology enabled. */
|
||||
#define X86_CR4_CET RT_BIT_32(23)
|
||||
/** @} */
|
||||
@@ -1267,12 +1331,16 @@ AssertCompile(X86_DR7_ANY_RW_IO(UINT32_C
|
||||
/** Machine check type register (P5). */
|
||||
#define MSR_P5_MC_TYPE UINT32_C(0x00000001)
|
||||
/** Time Stamp Counter. */
|
||||
+#ifndef MSR_IA32_TSC
|
||||
#define MSR_IA32_TSC 0x10
|
||||
+#endif
|
||||
#define MSR_IA32_CESR UINT32_C(0x00000011)
|
||||
#define MSR_IA32_CTR0 UINT32_C(0x00000012)
|
||||
#define MSR_IA32_CTR1 UINT32_C(0x00000013)
|
||||
|
||||
+#ifndef MSR_IA32_PLATFORM_ID
|
||||
#define MSR_IA32_PLATFORM_ID 0x17
|
||||
+#endif
|
||||
|
||||
#ifndef MSR_IA32_APICBASE /* qemu cpu.h kludge */
|
||||
# define MSR_IA32_APICBASE 0x1b
|
||||
@@ -1298,7 +1366,9 @@ AssertCompile(X86_DR7_ANY_RW_IO(UINT32_C
|
||||
#define MSR_CORE_THREAD_COUNT 0x35
|
||||
|
||||
/** CPU Feature control. */
|
||||
+#ifndef MSR_IA32_FEATURE_CONTROL
|
||||
#define MSR_IA32_FEATURE_CONTROL 0x3A
|
||||
+#endif
|
||||
/** Feature control - Lock MSR from writes (R/W0). */
|
||||
#define MSR_IA32_FEATURE_CONTROL_LOCK RT_BIT_64(0)
|
||||
/** Feature control - Enable VMX inside SMX operation (R/WL). */
|
||||
@@ -1323,11 +1393,15 @@ AssertCompile(X86_DR7_ANY_RW_IO(UINT32_C
|
||||
#define MSR_IA32_FEATURE_CONTROL_LMCE RT_BIT_64(20)
|
||||
|
||||
/** Per-processor TSC adjust MSR. */
|
||||
+#ifndef MSR_IA32_TSC_ADJUST
|
||||
#define MSR_IA32_TSC_ADJUST 0x3B
|
||||
+#endif
|
||||
|
||||
/** Spectre control register.
|
||||
* Logical processor scope. Reset value 0, unaffected by SIPI & INIT. */
|
||||
+#ifndef MSR_IA32_SPEC_CTRL
|
||||
#define MSR_IA32_SPEC_CTRL 0x48
|
||||
+#endif
|
||||
/** IBRS - Indirect branch restricted speculation. */
|
||||
#define MSR_IA32_SPEC_CTRL_F_IBRS RT_BIT_32(0)
|
||||
/** STIBP - Single thread indirect branch predictors. */
|
||||
@@ -1337,7 +1411,9 @@ AssertCompile(X86_DR7_ANY_RW_IO(UINT32_C
|
||||
|
||||
/** Prediction command register.
|
||||
* Write only, logical processor scope, no state since write only. */
|
||||
+#ifndef MSR_IA32_PRED_CMD
|
||||
#define MSR_IA32_PRED_CMD 0x49
|
||||
+#endif
|
||||
/** IBPB - Indirect branch prediction barrie when written as 1. */
|
||||
#define MSR_IA32_PRED_CMD_F_IBPB RT_BIT_32(0)
|
||||
|
||||
@@ -1348,7 +1424,9 @@ AssertCompile(X86_DR7_ANY_RW_IO(UINT32_C
|
||||
#define MSR_IA32_BIOS_SIGN_ID 0x8B
|
||||
|
||||
/** SMM monitor control. */
|
||||
+#ifndef MSR_IA32_SMM_MONITOR_CTL
|
||||
#define MSR_IA32_SMM_MONITOR_CTL 0x9B
|
||||
+#endif
|
||||
/** SMM control - Valid. */
|
||||
#define MSR_IA32_SMM_MONITOR_VALID RT_BIT_64(0)
|
||||
/** SMM control - VMXOFF unblocks SMI. */
|
||||
@@ -1357,10 +1435,14 @@ AssertCompile(X86_DR7_ANY_RW_IO(UINT32_C
|
||||
#define MSR_IA32_SMM_MONITOR_MSGEG_PHYSADDR(a) (((a) >> 12) & UINT64_C(0xfffff))
|
||||
|
||||
/** SMBASE - Base address of SMRANGE image (Read-only, SMM only). */
|
||||
+#ifndef MSR_IA32_SMBASE
|
||||
#define MSR_IA32_SMBASE 0x9E
|
||||
+#endif
|
||||
|
||||
/** General performance counter no. 0. */
|
||||
+#ifndef MSR_IA32_PMC0
|
||||
#define MSR_IA32_PMC0 0xC1
|
||||
+#endif
|
||||
/** General performance counter no. 1. */
|
||||
#define MSR_IA32_PMC1 0xC2
|
||||
/** General performance counter no. 2. */
|
||||
@@ -1383,18 +1465,26 @@ AssertCompile(X86_DR7_ANY_RW_IO(UINT32_C
|
||||
#define MSR_IA32_FSB_CLOCK_STS 0xCD
|
||||
|
||||
/** C-State configuration control. Intel specific: Nehalem, Sandy Bridge. */
|
||||
+#ifndef MSR_PKG_CST_CONFIG_CONTROL
|
||||
#define MSR_PKG_CST_CONFIG_CONTROL UINT32_C(0x000000e2)
|
||||
+#endif
|
||||
|
||||
/** C0 Maximum Frequency Clock Count */
|
||||
+#ifndef MSR_IA32_MPERF
|
||||
#define MSR_IA32_MPERF 0xE7
|
||||
+#endif
|
||||
/** C0 Actual Frequency Clock Count */
|
||||
+#ifndef MSR_IA32_APERF
|
||||
#define MSR_IA32_APERF 0xE8
|
||||
+#endif
|
||||
|
||||
/** MTRR Capabilities. */
|
||||
#define MSR_IA32_MTRR_CAP 0xFE
|
||||
|
||||
/** Architecture capabilities (bugfixes). */
|
||||
+#ifndef MSR_IA32_ARCH_CAPABILITIES
|
||||
#define MSR_IA32_ARCH_CAPABILITIES UINT32_C(0x10a)
|
||||
+#endif
|
||||
/** CPU is no subject to meltdown problems. */
|
||||
#define MSR_IA32_ARCH_CAP_F_RDCL_NO RT_BIT_32(0)
|
||||
/** CPU has better IBRS and you can leave it on all the time. */
|
||||
@@ -1408,7 +1498,9 @@ AssertCompile(X86_DR7_ANY_RW_IO(UINT32_C
|
||||
#define MSR_IA32_ARCH_CAP_F_MDS_NO RT_BIT_32(4)
|
||||
|
||||
/** Flush command register. */
|
||||
+#ifndef MSR_IA32_FLUSH_CMD
|
||||
#define MSR_IA32_FLUSH_CMD UINT32_C(0x10b)
|
||||
+#endif
|
||||
/** Flush the level 1 data cache when this bit is written. */
|
||||
#define MSR_IA32_FLUSH_CMD_F_L1D RT_BIT_32(0)
|
||||
|
||||
@@ -1429,14 +1521,20 @@ AssertCompile(X86_DR7_ANY_RW_IO(UINT32_C
|
||||
#endif
|
||||
|
||||
/** Machine Check Global Capabilities Register. */
|
||||
+#ifndef MSR_IA32_MCG_CAP
|
||||
#define MSR_IA32_MCG_CAP 0x179
|
||||
+#endif
|
||||
/** Machine Check Global Status Register. */
|
||||
+#ifndef MSR_IA32_MCG_STATUS
|
||||
#define MSR_IA32_MCG_STATUS 0x17A
|
||||
+#endif
|
||||
/** Machine Check Global Control Register. */
|
||||
#define MSR_IA32_MCG_CTRL 0x17B
|
||||
|
||||
/** Page Attribute Table. */
|
||||
+#ifndef MSR_IA32_CR_PAT
|
||||
#define MSR_IA32_CR_PAT 0x277
|
||||
+#endif
|
||||
/** Default PAT MSR value on processor powerup / reset (see Intel spec. 11.12.4
|
||||
* "Programming the PAT", AMD spec. 7.8.2 "PAT Indexing") */
|
||||
#define MSR_IA32_CR_PAT_INIT_VAL UINT64_C(0x0007040600070406)
|
||||
@@ -1455,36 +1553,58 @@ AssertCompile(X86_DR7_ANY_RW_IO(UINT32_C
|
||||
#define MSR_FLEX_RATIO 0x194
|
||||
/** Performance state value and starting with Intel core more.
|
||||
* Apple uses the >=core features to determine TSC granularity on older CPUs. */
|
||||
+#ifndef MSR_IA32_PERF_STATUS
|
||||
#define MSR_IA32_PERF_STATUS 0x198
|
||||
+#endif
|
||||
+#ifndef MSR_IA32_PERF_CTL
|
||||
#define MSR_IA32_PERF_CTL 0x199
|
||||
+#endif
|
||||
+#ifndef MSR_IA32_THERM_STATUS
|
||||
#define MSR_IA32_THERM_STATUS 0x19c
|
||||
+#endif
|
||||
|
||||
/** Offcore response event select registers. */
|
||||
+#ifndef MSR_OFFCORE_RSP_0
|
||||
#define MSR_OFFCORE_RSP_0 0x1a6
|
||||
+#endif
|
||||
+#ifndef MSR_OFFCORE_RSP_1
|
||||
#define MSR_OFFCORE_RSP_1 0x1a7
|
||||
+#endif
|
||||
|
||||
/** Enable misc. processor features (R/W). */
|
||||
+#ifndef MSR_IA32_MISC_ENABLE
|
||||
#define MSR_IA32_MISC_ENABLE 0x1A0
|
||||
+#endif
|
||||
/** Enable fast-strings feature (for REP MOVS and REP STORS). */
|
||||
#define MSR_IA32_MISC_ENABLE_FAST_STRINGS RT_BIT_64(0)
|
||||
/** Automatic Thermal Control Circuit Enable (R/W). */
|
||||
+#ifndef MSR_IA32_MISC_ENABLE_TCC
|
||||
#define MSR_IA32_MISC_ENABLE_TCC RT_BIT_64(3)
|
||||
+#endif
|
||||
/** Performance Monitoring Available (R). */
|
||||
#define MSR_IA32_MISC_ENABLE_PERF_MON RT_BIT_64(7)
|
||||
/** Branch Trace Storage Unavailable (R/O). */
|
||||
+#ifndef MSR_IA32_MISC_ENABLE_BTS_UNAVAIL
|
||||
#define MSR_IA32_MISC_ENABLE_BTS_UNAVAIL RT_BIT_64(11)
|
||||
+#endif
|
||||
/** Precise Event Based Sampling (PEBS) Unavailable (R/O). */
|
||||
+#ifndef MSR_IA32_MISC_ENABLE_PEBS_UNAVAIL
|
||||
#define MSR_IA32_MISC_ENABLE_PEBS_UNAVAIL RT_BIT_64(12)
|
||||
+#endif
|
||||
/** Enhanced Intel SpeedStep Technology Enable (R/W). */
|
||||
#define MSR_IA32_MISC_ENABLE_SST_ENABLE RT_BIT_64(16)
|
||||
/** If MONITOR/MWAIT is supported (R/W). */
|
||||
#define MSR_IA32_MISC_ENABLE_MONITOR RT_BIT_64(18)
|
||||
/** Limit CPUID Maxval to 3 leafs (R/W). */
|
||||
+#ifndef MSR_IA32_MISC_ENABLE_LIMIT_CPUID
|
||||
#define MSR_IA32_MISC_ENABLE_LIMIT_CPUID RT_BIT_64(22)
|
||||
+#endif
|
||||
/** When set to 1, xTPR messages are disabled (R/W). */
|
||||
#define MSR_IA32_MISC_ENABLE_XTPR_MSG_DISABLE RT_BIT_64(23)
|
||||
/** When set to 1, the Execute Disable Bit feature (XD Bit) is disabled (R/W). */
|
||||
+#ifndef MSR_IA32_MISC_ENABLE_XD_DISABLE
|
||||
#define MSR_IA32_MISC_ENABLE_XD_DISABLE RT_BIT_64(34)
|
||||
+#endif
|
||||
|
||||
/** Trace/Profile Resource Control (R/W) */
|
||||
#define MSR_IA32_DEBUGCTL UINT32_C(0x000001d9)
|
||||
@@ -1665,7 +1785,9 @@ AssertCompile(X86_DR7_ANY_RW_IO(UINT32_C
|
||||
/** @} */
|
||||
|
||||
/** Intel TSX (Transactional Synchronization Extensions) control MSR. */
|
||||
+#ifndef MSR_IA32_TSX_CTRL
|
||||
#define MSR_IA32_TSX_CTRL 0x122
|
||||
+#endif
|
||||
|
||||
/** Variable range MTRRs.
|
||||
* @{ */
|
||||
@@ -1715,93 +1837,171 @@ AssertCompile(X86_DR7_ANY_RW_IO(UINT32_C
|
||||
#define MSR_IA32_PERF_GLOBAL_OVF_CTRL 0x390
|
||||
|
||||
/** Precise Event Based sampling (Intel only). */
|
||||
+#ifndef MSR_IA32_PEBS_ENABLE
|
||||
#define MSR_IA32_PEBS_ENABLE 0x3F1
|
||||
+#endif
|
||||
|
||||
+#ifndef MSR_DRAM_POWER_LIMIT
|
||||
#define MSR_IA32_MC0_CTL 0x400
|
||||
+#endif
|
||||
+#ifndef MSR_IA32_MC0_STATUS
|
||||
#define MSR_IA32_MC0_STATUS 0x401
|
||||
+#endif
|
||||
|
||||
/** Basic VMX information. */
|
||||
+#ifndef MSR_IA32_VMX_BASIC
|
||||
#define MSR_IA32_VMX_BASIC 0x480
|
||||
+#endif
|
||||
/** Allowed settings for pin-based VM execution controls. */
|
||||
+#ifndef MSR_IA32_VMX_PINBASED_CTLS
|
||||
#define MSR_IA32_VMX_PINBASED_CTLS 0x481
|
||||
+#endif
|
||||
/** Allowed settings for proc-based VM execution controls. */
|
||||
+#ifndef MSR_IA32_VMX_PROCBASED_CTLS
|
||||
#define MSR_IA32_VMX_PROCBASED_CTLS 0x482
|
||||
+#endif
|
||||
/** Allowed settings for the VM-exit controls. */
|
||||
+#ifndef MSR_IA32_VMX_EXIT_CTLS
|
||||
#define MSR_IA32_VMX_EXIT_CTLS 0x483
|
||||
+#endif
|
||||
/** Allowed settings for the VM-entry controls. */
|
||||
+#ifndef MSR_IA32_VMX_ENTRY_CTLS
|
||||
#define MSR_IA32_VMX_ENTRY_CTLS 0x484
|
||||
+#endif
|
||||
/** Misc VMX info. */
|
||||
+#ifndef MSR_IA32_VMX_MISC
|
||||
#define MSR_IA32_VMX_MISC 0x485
|
||||
+#endif
|
||||
/** Fixed cleared bits in CR0. */
|
||||
+#ifndef MSR_IA32_VMX_CR0_FIXED0
|
||||
#define MSR_IA32_VMX_CR0_FIXED0 0x486
|
||||
+#endif
|
||||
/** Fixed set bits in CR0. */
|
||||
+#ifndef MSR_IA32_VMX_CR0_FIXED1
|
||||
#define MSR_IA32_VMX_CR0_FIXED1 0x487
|
||||
+#endif
|
||||
/** Fixed cleared bits in CR4. */
|
||||
+#ifndef MSR_IA32_VMX_CR4_FIXED0
|
||||
#define MSR_IA32_VMX_CR4_FIXED0 0x488
|
||||
+#endif
|
||||
/** Fixed set bits in CR4. */
|
||||
+#ifndef MSR_IA32_VMX_CR4_FIXED1
|
||||
#define MSR_IA32_VMX_CR4_FIXED1 0x489
|
||||
+#endif
|
||||
/** Information for enumerating fields in the VMCS. */
|
||||
+#ifndef MSR_IA32_VMX_VMCS_ENUM
|
||||
#define MSR_IA32_VMX_VMCS_ENUM 0x48A
|
||||
+#endif
|
||||
/** Allowed settings for secondary processor-based VM-execution controls. */
|
||||
+#ifndef MSR_IA32_VMX_PROCBASED_CTLS2
|
||||
#define MSR_IA32_VMX_PROCBASED_CTLS2 0x48B
|
||||
+#endif
|
||||
/** EPT capabilities. */
|
||||
+#ifndef MSR_IA32_VMX_EPT_VPID_CAP
|
||||
#define MSR_IA32_VMX_EPT_VPID_CAP 0x48C
|
||||
+#endif
|
||||
/** Allowed settings of all pin-based VM execution controls. */
|
||||
+#ifndef MSR_IA32_VMX_TRUE_PINBASED_CTLS
|
||||
#define MSR_IA32_VMX_TRUE_PINBASED_CTLS 0x48D
|
||||
+#endif
|
||||
/** Allowed settings of all proc-based VM execution controls. */
|
||||
+#ifndef MSR_IA32_VMX_TRUE_PROCBASED_CTLS
|
||||
#define MSR_IA32_VMX_TRUE_PROCBASED_CTLS 0x48E
|
||||
+#endif
|
||||
/** Allowed settings of all VMX exit controls. */
|
||||
+#ifndef MSR_IA32_VMX_TRUE_EXIT_CTLS
|
||||
#define MSR_IA32_VMX_TRUE_EXIT_CTLS 0x48F
|
||||
+#endif
|
||||
/** Allowed settings of all VMX entry controls. */
|
||||
+#ifndef MSR_IA32_VMX_TRUE_ENTRY_CTLS
|
||||
#define MSR_IA32_VMX_TRUE_ENTRY_CTLS 0x490
|
||||
+#endif
|
||||
/** Allowed settings for the VM-function controls. */
|
||||
+#ifndef MSR_IA32_VMX_VMFUNC
|
||||
#define MSR_IA32_VMX_VMFUNC 0x491
|
||||
/** Tertiary processor-based VM execution controls. */
|
||||
#define MSR_IA32_VMX_PROCBASED_CTLS3 0x492
|
||||
/** Secondary VM-exit controls. */
|
||||
#define MSR_IA32_VMX_EXIT_CTLS2 0x493
|
||||
+#endif
|
||||
|
||||
/** Intel PT - Enable and control for trace packet generation. */
|
||||
+#ifndef MSR_IA32_RTIT_CTL
|
||||
#define MSR_IA32_RTIT_CTL 0x570
|
||||
+#endif
|
||||
|
||||
/** DS Save Area (R/W). */
|
||||
+#ifndef MSR_IA32_DS_AREA
|
||||
#define MSR_IA32_DS_AREA 0x600
|
||||
+#endif
|
||||
/** Running Average Power Limit (RAPL) power units. */
|
||||
+#ifndef MSR_RAPL_POWER_UNIT
|
||||
#define MSR_RAPL_POWER_UNIT 0x606
|
||||
+#endif
|
||||
/** Package C3 Interrupt Response Limit. */
|
||||
+#ifndef MSR_PKGC3_IRTL
|
||||
#define MSR_PKGC3_IRTL 0x60a
|
||||
+#endif
|
||||
/** Package C6/C7S Interrupt Response Limit 1. */
|
||||
#define MSR_PKGC_IRTL1 0x60b
|
||||
/** Package C6/C7S Interrupt Response Limit 2. */
|
||||
#define MSR_PKGC_IRTL2 0x60c
|
||||
/** Package C2 Residency Counter. */
|
||||
+#ifndef MSR_PKG_C2_RESIDENCY
|
||||
#define MSR_PKG_C2_RESIDENCY 0x60d
|
||||
+#endif
|
||||
/** PKG RAPL Power Limit Control. */
|
||||
+#ifndef MSR_PKG_POWER_LIMIT
|
||||
#define MSR_PKG_POWER_LIMIT 0x610
|
||||
+#endif
|
||||
/** PKG Energy Status. */
|
||||
+#ifndef MSR_PKG_ENERGY_STATUS
|
||||
#define MSR_PKG_ENERGY_STATUS 0x611
|
||||
+#endif
|
||||
/** PKG Perf Status. */
|
||||
+#ifndef MSR_PKG_PERF_STATUS
|
||||
#define MSR_PKG_PERF_STATUS 0x613
|
||||
+#endif
|
||||
/** PKG RAPL Parameters. */
|
||||
+#ifndef MSR_PKG_POWER_INFO
|
||||
#define MSR_PKG_POWER_INFO 0x614
|
||||
+#endif
|
||||
/** DRAM RAPL Power Limit Control. */
|
||||
+#ifndef MSR_DRAM_POWER_LIMIT
|
||||
#define MSR_DRAM_POWER_LIMIT 0x618
|
||||
+#endif
|
||||
/** DRAM Energy Status. */
|
||||
+#ifndef MSR_DRAM_ENERGY_STATUS
|
||||
#define MSR_DRAM_ENERGY_STATUS 0x619
|
||||
+#endif
|
||||
/** DRAM Performance Throttling Status. */
|
||||
+#ifndef MSR_DRAM_PERF_STATUS
|
||||
#define MSR_DRAM_PERF_STATUS 0x61b
|
||||
+#endif
|
||||
/** DRAM RAPL Parameters. */
|
||||
+#ifndef MSR_DRAM_POWER_INFO
|
||||
#define MSR_DRAM_POWER_INFO 0x61c
|
||||
+#endif
|
||||
/** Package C10 Residency Counter. */
|
||||
+#ifndef MSR_PKG_C10_RESIDENCY
|
||||
#define MSR_PKG_C10_RESIDENCY 0x632
|
||||
+#endif
|
||||
/** PP0 Energy Status. */
|
||||
+#ifndef MSR_PP0_ENERGY_STATUS
|
||||
#define MSR_PP0_ENERGY_STATUS 0x639
|
||||
+#endif
|
||||
/** PP1 Energy Status. */
|
||||
+#ifndef MSR_PP1_ENERGY_STATUS
|
||||
#define MSR_PP1_ENERGY_STATUS 0x641
|
||||
+#endif
|
||||
/** Turbo Activation Ratio. */
|
||||
+#ifndef MSR_TURBO_ACTIVATION_RATIO
|
||||
#define MSR_TURBO_ACTIVATION_RATIO 0x64c
|
||||
+#endif
|
||||
/** Core Performance Limit Reasons. */
|
||||
+#ifndef MSR_CORE_PERF_LIMIT_REASONS
|
||||
#define MSR_CORE_PERF_LIMIT_REASONS 0x64f
|
||||
+#endif
|
||||
|
||||
/** X2APIC MSR range start. */
|
||||
#define MSR_IA32_X2APIC_START 0x800
|
||||
@@ -1936,23 +2136,47 @@ AssertCompile(X86_DR7_ANY_RW_IO(UINT32_C
|
||||
/** The mask which give the SYSCALL EIP. */
|
||||
#define MSR_K6_STAR_SYSCALL_EIP_MASK UINT32_C(0xffffffff)
|
||||
/** K6 WHCR - Write Handling Control Register. */
|
||||
+#ifndef MSR_K6_WHCR
|
||||
#define MSR_K6_WHCR UINT32_C(0xc0000082)
|
||||
+#endif
|
||||
/** K6 UWCCR - UC/WC Cacheability Control Register. */
|
||||
+#ifndef MSR_K6_UWCCR
|
||||
#define MSR_K6_UWCCR UINT32_C(0xc0000085)
|
||||
+#endif
|
||||
/** K6 PSOR - Processor State Observability Register. */
|
||||
+#ifndef MSR_K6_PSOR
|
||||
#define MSR_K6_PSOR UINT32_C(0xc0000087)
|
||||
+#endif
|
||||
/** K6 PFIR - Page Flush/Invalidate Register. */
|
||||
+#ifndef MSR_K6_PFIR
|
||||
#define MSR_K6_PFIR UINT32_C(0xc0000088)
|
||||
+#endif
|
||||
|
||||
/** Performance counter MSRs. (AMD only) */
|
||||
+#ifndef MSR_K7_EVNTSEL0
|
||||
#define MSR_K7_EVNTSEL0 UINT32_C(0xc0010000)
|
||||
+#endif
|
||||
+#ifndef MSR_K7_EVNTSEL1
|
||||
#define MSR_K7_EVNTSEL1 UINT32_C(0xc0010001)
|
||||
+#endif
|
||||
+#ifndef MSR_K7_EVNTSEL2
|
||||
#define MSR_K7_EVNTSEL2 UINT32_C(0xc0010002)
|
||||
+#endif
|
||||
+#ifndef MSR_K7_EVNTSEL3
|
||||
#define MSR_K7_EVNTSEL3 UINT32_C(0xc0010003)
|
||||
+#endif
|
||||
+#ifndef MSR_K7_PERFCTR0
|
||||
#define MSR_K7_PERFCTR0 UINT32_C(0xc0010004)
|
||||
+#endif
|
||||
+#ifndef MSR_K7_PERFCTR1
|
||||
#define MSR_K7_PERFCTR1 UINT32_C(0xc0010005)
|
||||
+#endif
|
||||
+#ifndef MSR_K7_PERFCTR2
|
||||
#define MSR_K7_PERFCTR2 UINT32_C(0xc0010006)
|
||||
+#endif
|
||||
+#ifndef MSR_K7_PERFCTR3
|
||||
#define MSR_K7_PERFCTR3 UINT32_C(0xc0010007)
|
||||
+#endif
|
||||
|
||||
/** K8 LSTAR - Long mode SYSCALL target (RIP). */
|
||||
#define MSR_K8_LSTAR UINT32_C(0xc0000082)
|
||||
@@ -1968,14 +2192,20 @@ AssertCompile(X86_DR7_ANY_RW_IO(UINT32_C
|
||||
#define MSR_K8_KERNEL_GS_BASE UINT32_C(0xc0000102)
|
||||
/** K8 TSC_AUX - Used with RDTSCP. */
|
||||
#define MSR_K8_TSC_AUX UINT32_C(0xc0000103)
|
||||
+#ifndef MSR_K8_SYSCFG
|
||||
#define MSR_K8_SYSCFG UINT32_C(0xc0010010)
|
||||
+#endif
|
||||
#define MSR_K8_HWCR UINT32_C(0xc0010015)
|
||||
#define MSR_K8_IORRBASE0 UINT32_C(0xc0010016)
|
||||
#define MSR_K8_IORRMASK0 UINT32_C(0xc0010017)
|
||||
#define MSR_K8_IORRBASE1 UINT32_C(0xc0010018)
|
||||
#define MSR_K8_IORRMASK1 UINT32_C(0xc0010019)
|
||||
+#ifndef MSR_K8_TOP_MEM1
|
||||
#define MSR_K8_TOP_MEM1 UINT32_C(0xc001001a)
|
||||
+#endif
|
||||
+#ifndef MSR_K8_TOP_MEM2
|
||||
#define MSR_K8_TOP_MEM2 UINT32_C(0xc001001d)
|
||||
+#endif
|
||||
|
||||
/** SMM MSRs. */
|
||||
#define MSR_K7_SMBASE UINT32_C(0xc0010111)
|
||||
Index: VirtualBox-7.0.14/include/VBox/vmm/hm_vmx.h
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/include/VBox/vmm/hm_vmx.h
|
||||
+++ VirtualBox-7.0.14/include/VBox/vmm/hm_vmx.h
|
||||
@@ -1633,7 +1633,9 @@ AssertCompileSize(VMXABORT, 4);
|
||||
/** VMCS (and related regions) memory type - Uncacheable. */
|
||||
#define VMX_BASIC_MEM_TYPE_UC 0
|
||||
/** VMCS (and related regions) memory type - Write back. */
|
||||
+#ifndef VMX_BASIC_MEM_TYPE_WB
|
||||
#define VMX_BASIC_MEM_TYPE_WB 6
|
||||
+#endif
|
||||
/** Width of physical addresses used for VMCS and associated memory regions
|
||||
* (1=32-bit, 0=processor's physical address width). */
|
||||
#define VMX_BASIC_PHYSADDR_WIDTH_32BIT RT_BIT_64(48)
|
||||
Index: VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_drv.h
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Additions/linux/drm/vbox_drv.h
|
||||
+++ VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_drv.h
|
||||
@@ -87,6 +87,12 @@
|
||||
#else
|
||||
# define RTLNX_RHEL_MAX(a_iMajor, a_iMinor) (0)
|
||||
#endif
|
||||
+
|
||||
+#if defined(CONFIG_SUSE_VERSION)
|
||||
+# if CONFIG_SUSE_VERSION == 15 && CONFIG_SUSE_PATCHLEVEL == 1
|
||||
+# define OPENSUSE_151
|
||||
+# endif
|
||||
+#endif
|
||||
#if defined(CONFIG_SUSE_VERSION) && CONFIG_SUSE_VERSION == 12 && CONFIG_SUSE_PATCHLEVEL >= 4
|
||||
# define SUSE_SLE12
|
||||
#endif
|
@ -1,49 +0,0 @@
|
||||
Index: VirtualBox-7.0.14/include/VBox/VBoxGL2D.h
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/include/VBox/VBoxGL2D.h
|
||||
+++ VirtualBox-7.0.14/include/VBox/VBoxGL2D.h
|
||||
@@ -123,7 +123,7 @@ typedef GLvoid (APIENTRY *PFNVBOXVHWA_UN
|
||||
/* GL_ARB_pixel_buffer_object*/
|
||||
#ifndef Q_WS_MAC
|
||||
/* apears to be defined on mac */
|
||||
-typedef ptrdiff_t GLsizeiptr;
|
||||
+typedef long int GLsizeiptr;
|
||||
#endif
|
||||
|
||||
#ifndef GL_READ_ONLY
|
||||
Index: VirtualBox-7.0.14/src/VBox/Additions/3D/mesa/mesa-21.3.8/include/GL/glext.h
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Additions/3D/mesa/mesa-21.3.8/include/GL/glext.h
|
||||
+++ VirtualBox-7.0.14/src/VBox/Additions/3D/mesa/mesa-21.3.8/include/GL/glext.h
|
||||
@@ -466,7 +466,12 @@ GLAPI void APIENTRY glBlendEquation (GLe
|
||||
|
||||
#ifndef GL_VERSION_1_5
|
||||
#define GL_VERSION_1_5 1
|
||||
+#include <QtCore/qglobal.h>
|
||||
+#if __BITS_PER_LONG != 64
|
||||
typedef khronos_ssize_t GLsizeiptr;
|
||||
+#else
|
||||
+typedef long int GLsizeiptr;
|
||||
+#endif
|
||||
typedef khronos_intptr_t GLintptr;
|
||||
#define GL_BUFFER_SIZE 0x8764
|
||||
#define GL_BUFFER_USAGE 0x8765
|
||||
Index: VirtualBox-7.0.14/src/VBox/Devices/Graphics/vmsvga_glext/glext.h
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Devices/Graphics/vmsvga_glext/glext.h
|
||||
+++ VirtualBox-7.0.14/src/VBox/Devices/Graphics/vmsvga_glext/glext.h
|
||||
@@ -4680,6 +4680,14 @@ GLAPI void APIENTRY glWeightuivARB (GLin
|
||||
GLAPI void APIENTRY glWeightPointerARB (GLint size, GLenum type, GLsizei stride, const void *pointer);
|
||||
GLAPI void APIENTRY glVertexBlendARB (GLint count);
|
||||
#endif
|
||||
+#ifndef GL_VERSION_1_5
|
||||
+/* GL types for handling large vertex buffer objects */
|
||||
+typedef ptrdiff_t GLintptr;
|
||||
+#if __BITS_PER_LONG != 64
|
||||
+typedef ptrdiff_t GLsizeiptr;
|
||||
+#else
|
||||
+typedef long int GLsizeiptr;
|
||||
+#endif
|
||||
#endif /* GL_ARB_vertex_blend */
|
||||
|
||||
#ifndef GL_ARB_vertex_buffer_object
|
@ -1,163 +0,0 @@
|
||||
Index: VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_drv.c
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Additions/linux/drm/vbox_drv.c
|
||||
+++ VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_drv.c
|
||||
@@ -362,7 +362,9 @@ static struct drm_driver driver = {
|
||||
.master_drop = vbox_master_drop,
|
||||
#if RTLNX_VER_MIN(3,18,0) || RTLNX_RHEL_MAJ_PREREQ(7,2)
|
||||
# if RTLNX_VER_MAX(4,14,0) && !RTLNX_RHEL_MAJ_PREREQ(7,5) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5)
|
||||
+#if !(defined(CONFIG_SUSE_VERSION) && CONFIG_SUSE_VERSION == 12 && CONFIG_SUSE_PATCHLEVEL >= 4)
|
||||
.set_busid = drm_pci_set_busid,
|
||||
+#endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
Index: VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_main.c
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Additions/linux/drm/vbox_main.c
|
||||
+++ VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_main.c
|
||||
@@ -626,11 +626,13 @@ int vbox_dumb_destroy(struct drm_file *f
|
||||
#endif
|
||||
|
||||
#if RTLNX_VER_MAX(4,19,0) && !RTLNX_RHEL_MAJ_PREREQ(7,7) && !RTLNX_RHEL_MAJ_PREREQ(8,1) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5)
|
||||
+#if !(defined(CONFIG_SUSE_VERSION) && CONFIG_SUSE_VERSION == 12 && CONFIG_SUSE_PATCHLEVEL >= 4)
|
||||
static void ttm_bo_put(struct ttm_buffer_object *bo)
|
||||
{
|
||||
ttm_bo_unref(&bo);
|
||||
}
|
||||
#endif
|
||||
+#endif
|
||||
|
||||
void vbox_gem_free_object(struct drm_gem_object *obj)
|
||||
{
|
||||
Index: VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_ttm.c
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Additions/linux/drm/vbox_ttm.c
|
||||
+++ VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_ttm.c
|
||||
@@ -302,7 +302,7 @@ static struct ttm_backend_func vbox_tt_b
|
||||
};
|
||||
#endif
|
||||
|
||||
-#if RTLNX_VER_MAX(4,17,0) && !RTLNX_RHEL_MAJ_PREREQ(7,6) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5)
|
||||
+#if RTLNX_VER_MAX(4,17,0) && !RTLNX_RHEL_MAJ_PREREQ(7,6) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5) && !defined(SUSE_SLE12)
|
||||
static struct ttm_tt *vbox_ttm_tt_create(struct ttm_bo_device *bdev,
|
||||
unsigned long size,
|
||||
u32 page_flags,
|
||||
@@ -339,7 +339,7 @@ static struct ttm_tt *vbox_ttm_tt_create
|
||||
}
|
||||
|
||||
#if RTLNX_VER_MAX(4,17,0)
|
||||
-# if RTLNX_VER_MAX(4,16,0) && !RTLNX_RHEL_MAJ_PREREQ(7,6) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5)
|
||||
+# if RTLNX_VER_MAX(4,16,0) && !RTLNX_RHEL_MAJ_PREREQ(7,6) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5) && !defined(SUSE_SLE12)
|
||||
static int vbox_ttm_tt_populate(struct ttm_tt *ttm)
|
||||
{
|
||||
return ttm_pool_populate(ttm);
|
||||
@@ -406,7 +406,7 @@ static struct ttm_bo_driver vbox_bo_driv
|
||||
.io_mem_reserve = &vbox_ttm_io_mem_reserve,
|
||||
.io_mem_free = &vbox_ttm_io_mem_free,
|
||||
#if RTLNX_VER_MIN(4,12,0) || RTLNX_RHEL_MAJ_PREREQ(7,5)
|
||||
-# if RTLNX_VER_MAX(4,16,0) && !RTLNX_RHEL_MAJ_PREREQ(7,6) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5)
|
||||
+# if RTLNX_VER_MAX(4,16,0) && !RTLNX_RHEL_MAJ_PREREQ(7,6) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5) && !defined(SUSE_SLE12)
|
||||
.io_mem_pfn = ttm_bo_default_io_mem_pfn,
|
||||
# endif
|
||||
#endif
|
||||
@@ -651,7 +651,7 @@ int vbox_bo_create(struct drm_device *de
|
||||
ret = ttm_bo_init(&vbox->ttm.bdev, &vboxbo->bo, size,
|
||||
#endif /* < 6.1.0 */
|
||||
ttm_bo_type_device, &vboxbo->placement,
|
||||
-#if RTLNX_VER_MAX(4,17,0) && !RTLNX_RHEL_MAJ_PREREQ(7,6) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5)
|
||||
+#if RTLNX_VER_MAX(4,17,0) && !RTLNX_RHEL_MAJ_PREREQ(7,6) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5) && !defined(SUSE_SLE12)
|
||||
align >> PAGE_SHIFT, false, NULL, acc_size,
|
||||
#elif RTLNX_VER_MAX(5,13,0) && !RTLNX_RHEL_RANGE(8,6, 8,99) /* < 5.13.0, < RHEL(8.6, 8.99) */
|
||||
align >> PAGE_SHIFT, false, acc_size,
|
||||
@@ -693,7 +693,7 @@ static inline u64 vbox_bo_gpu_offset(str
|
||||
|
||||
int vbox_bo_pin(struct vbox_bo *bo, u32 mem_type, u64 *gpu_addr)
|
||||
{
|
||||
-#if RTLNX_VER_MIN(4,16,0) || RTLNX_RHEL_MAJ_PREREQ(7,6) || RTLNX_SUSE_MAJ_PREREQ(15,1) || RTLNX_SUSE_MAJ_PREREQ(12,5)
|
||||
+#if RTLNX_VER_MIN(4,16,0) || RTLNX_RHEL_MAJ_PREREQ(7,6) || RTLNX_SUSE_MAJ_PREREQ(15,1) || RTLNX_SUSE_MAJ_PREREQ(12,5) || defined(SUSE_SLE12)
|
||||
struct ttm_operation_ctx ctx = { false, false };
|
||||
#endif
|
||||
int ret;
|
||||
@@ -716,7 +716,7 @@ int vbox_bo_pin(struct vbox_bo *bo, u32
|
||||
PLACEMENT_FLAGS(bo->placements[i]) |= TTM_PL_FLAG_NO_EVICT;
|
||||
#endif
|
||||
|
||||
-#if RTLNX_VER_MAX(4,16,0) && !RTLNX_RHEL_MAJ_PREREQ(7,6) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5)
|
||||
+#if RTLNX_VER_MAX(4,16,0) && !RTLNX_RHEL_MAJ_PREREQ(7,6) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5) && !defined(SUSE_SLE12)
|
||||
ret = ttm_bo_validate(&bo->bo, &bo->placement, false, false);
|
||||
#else
|
||||
ret = ttm_bo_validate(&bo->bo, &bo->placement, &ctx);
|
||||
@@ -738,7 +738,7 @@ int vbox_bo_pin(struct vbox_bo *bo, u32
|
||||
|
||||
int vbox_bo_unpin(struct vbox_bo *bo)
|
||||
{
|
||||
-#if RTLNX_VER_MIN(4,16,0) || RTLNX_RHEL_MAJ_PREREQ(7,6) || RTLNX_SUSE_MAJ_PREREQ(15,1) || RTLNX_SUSE_MAJ_PREREQ(12,5)
|
||||
+#if RTLNX_VER_MIN(4,16,0) || RTLNX_RHEL_MAJ_PREREQ(7,6) || RTLNX_SUSE_MAJ_PREREQ(15,1) || RTLNX_SUSE_MAJ_PREREQ(12,5) || defined(SUSE_SLE12)
|
||||
# if RTLNX_VER_MAX(5,11,0) && !RTLNX_RHEL_MAJ_PREREQ(8,5)
|
||||
struct ttm_operation_ctx ctx = { false, false };
|
||||
# endif
|
||||
@@ -761,7 +761,7 @@ int vbox_bo_unpin(struct vbox_bo *bo)
|
||||
PLACEMENT_FLAGS(bo->placements[i]) &= ~TTM_PL_FLAG_NO_EVICT;
|
||||
#endif
|
||||
|
||||
-#if RTLNX_VER_MAX(4,16,0) && !RTLNX_RHEL_MAJ_PREREQ(7,6) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5)
|
||||
+#if RTLNX_VER_MAX(4,16,0) && !RTLNX_RHEL_MAJ_PREREQ(7,6) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5) && !defined(SUSE_SLE12)
|
||||
ret = ttm_bo_validate(&bo->bo, &bo->placement, false, false);
|
||||
#elif RTLNX_VER_MAX(5,11,0) && !RTLNX_RHEL_MAJ_PREREQ(8,5)
|
||||
ret = ttm_bo_validate(&bo->bo, &bo->placement, &ctx);
|
||||
@@ -784,7 +784,7 @@ int vbox_bo_unpin(struct vbox_bo *bo)
|
||||
*/
|
||||
int vbox_bo_push_sysram(struct vbox_bo *bo)
|
||||
{
|
||||
-# if RTLNX_VER_MIN(4,16,0) || RTLNX_RHEL_MAJ_PREREQ(7,6) || RTLNX_SUSE_MAJ_PREREQ(15,1) || RTLNX_SUSE_MAJ_PREREQ(12,5)
|
||||
+# if RTLNX_VER_MIN(4,16,0) || RTLNX_RHEL_MAJ_PREREQ(7,6) || RTLNX_SUSE_MAJ_PREREQ(15,1) || RTLNX_SUSE_MAJ_PREREQ(12,5) || defined(SUSE_SLE12)
|
||||
struct ttm_operation_ctx ctx = { false, false };
|
||||
# endif
|
||||
int i, ret;
|
||||
@@ -805,7 +805,7 @@ int vbox_bo_push_sysram(struct vbox_bo *
|
||||
for (i = 0; i < bo->placement.num_placement; i++)
|
||||
PLACEMENT_FLAGS(bo->placements[i]) |= TTM_PL_FLAG_NO_EVICT;
|
||||
|
||||
-# if RTLNX_VER_MAX(4,16,0) && !RTLNX_RHEL_MAJ_PREREQ(7,6) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5)
|
||||
+# if RTLNX_VER_MAX(4,16,0) && !RTLNX_RHEL_MAJ_PREREQ(7,6) && !RTLNX_SUSE_MAJ_PREREQ(15,1) && !RTLNX_SUSE_MAJ_PREREQ(12,5) && !defined(SUSE_SLE12)
|
||||
ret = ttm_bo_validate(&bo->bo, &bo->placement, false, false);
|
||||
# else
|
||||
ret = ttm_bo_validate(&bo->bo, &bo->placement, &ctx);
|
||||
Index: VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_drv.h
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Additions/linux/drm/vbox_drv.h
|
||||
+++ VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_drv.h
|
||||
@@ -87,6 +87,9 @@
|
||||
#else
|
||||
# define RTLNX_RHEL_MAX(a_iMajor, a_iMinor) (0)
|
||||
#endif
|
||||
+#if defined(CONFIG_SUSE_VERSION) && CONFIG_SUSE_VERSION == 12 && CONFIG_SUSE_PATCHLEVEL >= 4
|
||||
+# define SUSE_SLE12
|
||||
+#endif
|
||||
|
||||
/** @def RTLNX_RHEL_RANGE
|
||||
* Check that it's a RedHat kernel in the given version range.
|
||||
Index: VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_mode.c
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Additions/linux/drm/vbox_mode.c
|
||||
+++ VirtualBox-7.0.14/src/VBox/Additions/linux/drm/vbox_mode.c
|
||||
@@ -557,7 +557,8 @@ static void vbox_set_edid(struct drm_con
|
||||
for (i = 0; i < EDID_SIZE - 1; ++i)
|
||||
sum += edid[i];
|
||||
edid[EDID_SIZE - 1] = (0x100 - (sum & 0xFF)) & 0xFF;
|
||||
-#if RTLNX_VER_MIN(4,19,0) || RTLNX_RHEL_MAJ_PREREQ(7,7) || RTLNX_RHEL_MAJ_PREREQ(8,1) || RTLNX_SUSE_MAJ_PREREQ(15,1) || RTLNX_SUSE_MAJ_PREREQ(12,5)
|
||||
+#if RTLNX_VER_MIN(4,19,0) || RTLNX_RHEL_MAJ_PREREQ(7,7) || \
|
||||
+ defined(SUSE_SLE12) || RTLNX_RHEL_MAJ_PREREQ(8,1) || RTLNX_SUSE_MAJ_PREREQ(15,1) || RTLNX_SUSE_MAJ_PREREQ(12,5)
|
||||
drm_connector_update_edid_property(connector, (struct edid *)edid);
|
||||
#else
|
||||
drm_mode_connector_update_edid_property(connector, (struct edid *)edid);
|
||||
@@ -732,7 +733,7 @@ static int vbox_connector_init(struct dr
|
||||
drm_connector_register(connector);
|
||||
#endif
|
||||
|
||||
-#if RTLNX_VER_MIN(4,19,0) || RTLNX_RHEL_MAJ_PREREQ(7,7) || RTLNX_RHEL_MAJ_PREREQ(8,1) || RTLNX_SUSE_MAJ_PREREQ(15,1) || RTLNX_SUSE_MAJ_PREREQ(12,5)
|
||||
+#if RTLNX_VER_MIN(4,19,0) || RTLNX_RHEL_MAJ_PREREQ(7,7) || defined(SUSE_SLE12) || RTLNX_RHEL_MAJ_PREREQ(8,1) || RTLNX_SUSE_MAJ_PREREQ(15,1) || RTLNX_SUSE_MAJ_PREREQ(12,5)
|
||||
drm_connector_attach_encoder(connector, encoder);
|
||||
#else
|
||||
drm_mode_connector_attach_encoder(connector, encoder);
|
@ -1,20 +0,0 @@
|
||||
Index: VirtualBox-7.0.14/configure
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/configure
|
||||
+++ VirtualBox-7.0.14/configure
|
||||
@@ -475,8 +475,13 @@ check_gcc()
|
||||
log_failure "cannot execute '$CXX -dumpversion'"
|
||||
fail really
|
||||
fi
|
||||
- cc_maj=`echo $cc_ver|cut -d. -f1`
|
||||
- cc_min=`echo $cc_ver|cut -d. -f2`
|
||||
+ if echo $cc_ver | grep -q '\.'; then
|
||||
+ cc_maj=`echo $cc_ver|cut -d. -f1`
|
||||
+ cc_min=`echo $cc_ver|cut -d. -f2`
|
||||
+ else
|
||||
+ cc_maj=$cc_ver
|
||||
+ cc_min=0
|
||||
+ fi
|
||||
if [ "x$cc_ver" != "x$cxx_ver" ]; then
|
||||
log_failure "gcc version $cc_ver does not match g++ version $cxx_ver"
|
||||
fail really
|
@ -1,30 +0,0 @@
|
||||
Index: VirtualBox-7.0.14/src/VBox/Runtime/r0drv/linux/alloc-r0drv-linux.c
|
||||
===================================================================
|
||||
--- VirtualBox-7.0.14.orig/src/VBox/Runtime/r0drv/linux/alloc-r0drv-linux.c
|
||||
+++ VirtualBox-7.0.14/src/VBox/Runtime/r0drv/linux/alloc-r0drv-linux.c
|
||||
@@ -45,7 +45,7 @@
|
||||
#include <iprt/assert.h>
|
||||
#include <iprt/errcore.h>
|
||||
#include "r0drv/alloc-r0drv.h"
|
||||
-
|
||||
+#include <linux/kmemleak.h>
|
||||
#include "internal/initterm.h"
|
||||
|
||||
|
||||
@@ -78,11 +78,12 @@ DECLHIDDEN(int) rtR0MemAllocEx(size_t cb
|
||||
&& !(fFlags & RTMEMHDR_FLAG_ANY_CTX) ))
|
||||
{
|
||||
fFlags &= ~RTMEMHDR_FLAG_KMALLOC;
|
||||
- pHdr = vmalloc(cb + sizeof(*pHdr));
|
||||
- }
|
||||
+ pHdr = vmalloc(cb + sizeof(*pHdr));
|
||||
+ }
|
||||
+ kmemleak_not_leak(pHdr);
|
||||
}
|
||||
- else
|
||||
- pHdr = vmalloc(cb + sizeof(*pHdr));
|
||||
+ else
|
||||
+ pHdr = vmalloc(cb + sizeof(*pHdr));
|
||||
if (RT_LIKELY(pHdr))
|
||||
{
|
||||
/*
|