1
0
forked from pool/virtualbox
virtualbox/fixes_for_leap15.2.patch
Larry Finger aa9cd92c07 Accepting request 965783 from home:lwfinger:branches:Virtualization
- Update fixes for kernel 5.17.
  Add fixes for kernel 5.18 - file "fixes_for_kernel_5.18.patch" added

- Fix build error for guest modules in Leap 15.3

OBS-URL: https://build.opensuse.org/request/show/965783
OBS-URL: https://build.opensuse.org/package/show/Virtualization/virtualbox?expand=0&rev=628
2022-03-30 01:06:55 +00:00

214 lines
8.3 KiB
Diff

Index: VirtualBox-6.1.26/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
===================================================================
--- VirtualBox-6.1.26.orig/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
+++ VirtualBox-6.1.26/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
@@ -76,6 +76,10 @@
#define VBOXNETFLT_OS_SPECFIC 1
#include "../VBoxNetFltInternal.h"
+# if defined(CONFIG_SUSE_VERSION) && CONFIG_SUSE_VERSION == 15 && CONFIG_SUSE_PATCHLEVEL == 2
+# define OPENSUSE_152
+# endif
+
typedef struct VBOXNETFLTNOTIFIER {
struct notifier_block Notifier;
PVBOXNETFLTINS pThis;
Index: VirtualBox-6.1.26/src/VBox/Additions/linux/drm/vbox_drv.c
===================================================================
--- VirtualBox-6.1.26.orig/src/VBox/Additions/linux/drm/vbox_drv.c
+++ VirtualBox-6.1.26/src/VBox/Additions/linux/drm/vbox_drv.c
@@ -310,12 +310,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 */
Index: VirtualBox-6.1.26/src/VBox/Additions/linux/drm/vbox_main.c
===================================================================
--- VirtualBox-6.1.26.orig/src/VBox/Additions/linux/drm/vbox_main.c
+++ VirtualBox-6.1.26/src/VBox/Additions/linux/drm/vbox_main.c
@@ -638,8 +638,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-6.1.26/include/iprt/cdefs.h
===================================================================
--- VirtualBox-6.1.26.orig/include/iprt/cdefs.h
+++ VirtualBox-6.1.26/include/iprt/cdefs.h
@@ -1184,14 +1184,15 @@
* Tell the compiler that we're falling through to the next case in a switch.
* @sa RT_FALL_THRU */
#if 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-6.1.26/kBuild/header.kmk
===================================================================
--- VirtualBox-6.1.26.orig/kBuild/header.kmk
+++ VirtualBox-6.1.26/kBuild/header.kmk
@@ -754,7 +754,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-6.1.26/configure
===================================================================
--- VirtualBox-6.1.26.orig/configure
+++ VirtualBox-6.1.26/configure
@@ -1881,7 +1881,7 @@ check_kbuild()
fi
echo "export PATH" >> $ENV
echo "unset path_kbuild_bin path_dev_bin" >> $ENV
- KBUILD_SED="$KBUILDDIR_BIN/kmk_sed"
+ KBUILD_SED="/usr/bin/kmk_sed"
elif [ "$OS.$BUILD_MACHINE" = "darwin.amd64" ]; then
# Currently there are no amd64 kBuild bins. So use the x86 variant in any case.
KBUILDDIR_BIN="$KBUILDDIR/bin/$OS.x86"
@@ -1897,10 +1897,10 @@ check_kbuild()
echo "echo \"\$PATH\" | grep -q \"\$path_dev_bin\" || PATH=\"\$path_dev_bin:\$PATH\"" >> $ENV
echo "export PATH" >> $ENV
echo "unset path_kbuild_bin path_dev_bin" >> $ENV
- KBUILD_SED="$KBUILDDIR_BIN/kmk_sed"
+ KBUILD_SED="/usr/bin/kmk_sed"
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-6.1.26/tools/bin/backport-commit.sh
===================================================================
--- VirtualBox-6.1.26.orig/tools/bin/backport-commit.sh
+++ VirtualBox-6.1.26/tools/bin/backport-commit.sh
@@ -19,7 +19,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-6.1.26/tools/bin/backport-common.sh
===================================================================
--- VirtualBox-6.1.26.orig/tools/bin/backport-common.sh
+++ VirtualBox-6.1.26/tools/bin/backport-common.sh
@@ -1,4 +1,4 @@
-# $Id: backport-common.sh $
+ $Id: backport-common.sh $
## @file
# Common backport script bits.
#
@@ -23,7 +23,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-6.1.26/tools/bin/backport-merge-and-commit.sh
===================================================================
--- VirtualBox-6.1.26.orig/tools/bin/backport-merge-and-commit.sh
+++ VirtualBox-6.1.26/tools/bin/backport-merge-and-commit.sh
@@ -19,7 +19,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-6.1.26/tools/bin/backport-merge.sh
===================================================================
--- VirtualBox-6.1.26.orig/tools/bin/backport-merge.sh
+++ VirtualBox-6.1.26/tools/bin/backport-merge.sh
@@ -19,7 +19,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-6.1.26/tools/bin/gen-slickedit-workspace.sh
===================================================================
--- VirtualBox-6.1.26.orig/tools/bin/gen-slickedit-workspace.sh
+++ VirtualBox-6.1.26/tools/bin/gen-slickedit-workspace.sh
@@ -23,7 +23,7 @@ MY_CAT="kmk_cat"
MY_CP="kmk_cp"
MY_MKDIR="kmk_mkdir"
MY_MV="kmk_mv"
-MY_SED="kmk_sed"
+MY_SED="/usr/bin/kmk_sed"
MY_RM="kmk_rm"
MY_SLEEP="kmk_sleep"
MY_EXPR="kmk_expr"
Index: VirtualBox-6.1.26/src/VBox/Main/Makefile.kmk
===================================================================
--- VirtualBox-6.1.26.orig/src/VBox/Main/Makefile.kmk
+++ VirtualBox-6.1.26/src/VBox/Main/Makefile.kmk
@@ -235,7 +235,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-6.1.26/src/VBox/Runtime/Makefile.kmk
===================================================================
--- VirtualBox-6.1.26.orig/src/VBox/Runtime/Makefile.kmk
+++ VirtualBox-6.1.26/src/VBox/Runtime/Makefile.kmk
@@ -3662,6 +3662,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 \