Index: VirtualBox-7.0.8/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c =================================================================== --- VirtualBox-7.0.8.orig/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c +++ VirtualBox-7.0.8/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c @@ -86,6 +86,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-7.0.8/src/VBox/Additions/linux/drm/vbox_drv.c =================================================================== --- VirtualBox-7.0.8.orig/src/VBox/Additions/linux/drm/vbox_drv.c +++ VirtualBox-7.0.8/src/VBox/Additions/linux/drm/vbox_drv.c @@ -342,12 +342,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-7.0.8/src/VBox/Additions/linux/drm/vbox_main.c =================================================================== --- VirtualBox-7.0.8.orig/src/VBox/Additions/linux/drm/vbox_main.c +++ VirtualBox-7.0.8/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.8/include/iprt/cdefs.h =================================================================== --- VirtualBox-7.0.8.orig/include/iprt/cdefs.h +++ VirtualBox-7.0.8/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.8/kBuild/header.kmk =================================================================== --- VirtualBox-7.0.8.orig/kBuild/header.kmk +++ VirtualBox-7.0.8/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.8/configure =================================================================== --- VirtualBox-7.0.8.orig/configure +++ VirtualBox-7.0.8/configure @@ -2000,7 +2000,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 @@ -2010,7 +2010,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.8/tools/bin/backport-commit.sh =================================================================== --- VirtualBox-7.0.8.orig/tools/bin/backport-commit.sh +++ VirtualBox-7.0.8/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.8/tools/bin/backport-common.sh =================================================================== --- VirtualBox-7.0.8.orig/tools/bin/backport-common.sh +++ VirtualBox-7.0.8/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.8/tools/bin/backport-merge-and-commit.sh =================================================================== --- VirtualBox-7.0.8.orig/tools/bin/backport-merge-and-commit.sh +++ VirtualBox-7.0.8/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.8/tools/bin/backport-merge.sh =================================================================== --- VirtualBox-7.0.8.orig/tools/bin/backport-merge.sh +++ VirtualBox-7.0.8/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.8/src/VBox/Main/Makefile.kmk =================================================================== --- VirtualBox-7.0.8.orig/src/VBox/Main/Makefile.kmk +++ VirtualBox-7.0.8/src/VBox/Main/Makefile.kmk @@ -267,7 +267,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.8/src/VBox/Runtime/Makefile.kmk =================================================================== --- VirtualBox-7.0.8.orig/src/VBox/Runtime/Makefile.kmk +++ VirtualBox-7.0.8/src/VBox/Runtime/Makefile.kmk @@ -4411,6 +4411,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 \