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 \