File fixes_for_leap15.3.patch of Package virtualbox
Index: VirtualBox-6.1.20/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h
===================================================================
--- VirtualBox-6.1.20.orig/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h
+++ VirtualBox-6.1.20/src/VBox/Runtime/r0drv/linux/the-linux-kernel.h
@@ -137,9 +137,9 @@
#include <linux/interrupt.h>
#include <linux/completion.h>
#include <linux/compiler.h>
-#if RTLNX_VER_MIN(5,9,0) /* linux/fs.h defined HAVE_UNLOCKED_IOCTL from 2.6.11 up to 5.9, when it became an implicit assumption. */
+//#if RTLNX_VER_MIN(5,9,0) /* linux/fs.h defined HAVE_UNLOCKED_IOCTL from 2.6.11 up to 5.9, 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-6.1.20/src/VBox/Additions/linux/drm/vbox_drv.h
===================================================================
--- VirtualBox-6.1.20.orig/src/VBox/Additions/linux/drm/vbox_drv.h
+++ VirtualBox-6.1.20/src/VBox/Additions/linux/drm/vbox_drv.h
@@ -154,7 +154,7 @@
#define S64_MIN ((s64)(-S64_MAX - 1))
#endif
-#if RTLNX_VER_MIN(5,5,0) || RTLNX_RHEL_MIN(8,3)
+#if 1 //RTLNX_VER_MIN(5,5,0) || RTLNX_RHEL_MIN(8,3)
# include <drm/drm_file.h>
# include <drm/drm_drv.h>
# include <drm/drm_device.h>
Index: VirtualBox-6.1.20/src/VBox/Additions/linux/drm/vbox_drv.c
===================================================================
--- VirtualBox-6.1.20.orig/src/VBox/Additions/linux/drm/vbox_drv.c
+++ VirtualBox-6.1.20/src/VBox/Additions/linux/drm/vbox_drv.c
@@ -262,11 +262,7 @@ static const struct file_operations vbox
.read = drm_read,
};
-#if RTLNX_VER_MIN(5,9,0) || RTLNX_RHEL_MIN(8,4)
static void
-#else
-static int
-#endif
vbox_master_set(struct drm_device *dev,
struct drm_file *file_priv, bool from_open)
{
@@ -285,10 +281,6 @@ vbox_master_set(struct drm_device *dev,
vbox->need_refresh_timer = true;
schedule_delayed_work(&vbox->refresh_work, VBOX_REFRESH_PERIOD);
mutex_unlock(&vbox->hw_mutex);
-
-#if RTLNX_VER_MAX(5,9,0) && !RTLNX_RHEL_MAJ_PREREQ(8,4)
- return 0;
-#endif
}
#if RTLNX_VER_MAX(4,8,0) && !RTLNX_RHEL_MAJ_PREREQ(7,4)
@@ -310,18 +302,7 @@ static void vbox_master_drop(struct drm_
}
static struct drm_driver driver = {
-#if RTLNX_VER_MAX(5,4,0)
- .driver_features =
-#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 4, 0)
- DRIVER_PRIME |
-#endif
-# if RTLNX_VER_MAX(5,1,0) && !RTLNX_RHEL_MAJ_PREREQ(8,1)
- DRIVER_IRQ_SHARED |
-# endif
- DRIVER_MODESET | DRIVER_GEM | DRIVER_HAVE_IRQ,
-#else /* >= 5.4.0 && RHEL >= 8.3 */
- .driver_features = DRIVER_MODESET | DRIVER_GEM | DRIVER_HAVE_IRQ,
-#endif /* < 5.4.0 */
+ .driver_features = DRIVER_MODESET | DRIVER_GEM | DRIVER_HAVE_IRQ,
#if RTLNX_VER_MAX(4,19,0) && !RTLNX_RHEL_MAJ_PREREQ(8,3)
/* Legacy hooks, but still supported. */
Index: VirtualBox-6.1.20/src/VBox/Additions/linux/drm/vbox_fb.c
===================================================================
--- VirtualBox-6.1.20.orig/src/VBox/Additions/linux/drm/vbox_fb.c
+++ VirtualBox-6.1.20/src/VBox/Additions/linux/drm/vbox_fb.c
@@ -410,11 +410,7 @@ void vbox_fbdev_fini(struct drm_device *
vbox_bo_unpin(bo);
vbox_bo_unreserve(bo);
}
-#if RTLNX_VER_MIN(5,9,0) || RTLNX_RHEL_MIN(8,4)
drm_gem_object_put(afb->obj);
-#else
- drm_gem_object_put_unlocked(afb->obj);
-#endif
afb->obj = NULL;
}
drm_fb_helper_fini(&fbdev->helper);
@@ -443,24 +439,10 @@ int vbox_fbdev_init(struct drm_device *d
#else
drm_fb_helper_prepare(dev, &fbdev->helper, &vbox_fb_helper_funcs);
#endif
-#if RTLNX_VER_MIN(5,7,0) || RTLNX_RHEL_MIN(8,4)
ret = drm_fb_helper_init(dev, &fbdev->helper);
-#elif RTLNX_VER_MIN(4,11,0) || RTLNX_RHEL_MAJ_PREREQ(7,5)
- ret = drm_fb_helper_init(dev, &fbdev->helper, vbox->num_crtcs);
-#else /* < 4.11.0 */
- ret =
- drm_fb_helper_init(dev, &fbdev->helper, vbox->num_crtcs,
- vbox->num_crtcs);
-#endif
if (ret)
return ret;
-#if RTLNX_VER_MAX(5,7,0) && !RTLNX_RHEL_MAJ_PREREQ(8,4)
- ret = drm_fb_helper_single_add_all_connectors(&fbdev->helper);
- if (ret)
- goto err_fini;
-#endif
-
/* disable all the possible outputs/crtcs before entering KMS mode */
drm_helper_disable_unused_functions(dev);
Index: VirtualBox-6.1.20/src/VBox/Additions/linux/drm/vbox_main.c
===================================================================
--- VirtualBox-6.1.20.orig/src/VBox/Additions/linux/drm/vbox_main.c
+++ VirtualBox-6.1.20/src/VBox/Additions/linux/drm/vbox_main.c
@@ -46,11 +46,7 @@ static void vbox_user_framebuffer_destro
struct vbox_framebuffer *vbox_fb = to_vbox_framebuffer(fb);
if (vbox_fb->obj)
-#if RTLNX_VER_MIN(5,9,0) || RTLNX_RHEL_MIN(8,4)
drm_gem_object_put(vbox_fb->obj);
-#else
- drm_gem_object_put_unlocked(vbox_fb->obj);
-#endif
drm_framebuffer_cleanup(fb);
kfree(fb);
@@ -225,11 +221,7 @@ static struct drm_framebuffer *vbox_user
err_free_vbox_fb:
kfree(vbox_fb);
err_unref_obj:
-#if RTLNX_VER_MIN(5,9,0) || RTLNX_RHEL_MIN(8,4)
drm_gem_object_put(obj);
-#else
- drm_gem_object_put_unlocked(obj);
-#endif
return ERR_PTR(ret);
}
@@ -596,11 +588,7 @@ int vbox_dumb_create(struct drm_file *fi
return ret;
ret = drm_gem_handle_create(file, gobj, &handle);
-#if RTLNX_VER_MIN(5,9,0) || RTLNX_RHEL_MIN(8,4)
drm_gem_object_put(gobj);
-#else
- drm_gem_object_put_unlocked(gobj);
-#endif
if (ret)
return ret;
@@ -635,17 +623,7 @@ void vbox_gem_free_object(struct drm_gem
static inline u64 vbox_bo_mmap_offset(struct vbox_bo *bo)
{
-#if RTLNX_VER_MIN(5,4,0) || RTLNX_RHEL_MIN(8,3)
- return drm_vma_node_offset_addr(&bo->bo.base.vma_node);
-#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.20/src/VBox/Additions/linux/drm/vbox_mode.c
===================================================================
--- VirtualBox-6.1.20.orig/src/VBox/Additions/linux/drm/vbox_mode.c
+++ VirtualBox-6.1.20/src/VBox/Additions/linux/drm/vbox_mode.c
@@ -398,7 +398,7 @@ static struct drm_encoder *drm_encoder_f
static struct drm_encoder *vbox_best_single_encoder(struct drm_connector
*connector)
{
-#if RTLNX_VER_MIN(5,5,0) || RTLNX_RHEL_MIN(8,3)
+#if RTLNX_VER_MIN(5,3,0) || RTLNX_RHEL_MIN(8,3)
struct drm_encoder *encoder;
/* There is only one encoder per connector */
@@ -889,7 +889,7 @@ out_unmap_bo:
out_unreserve_bo:
vbox_bo_unreserve(bo);
out_unref_obj:
-#if RTLNX_VER_MIN(5,9,0) || RTLNX_RHEL_MIN(8,4)
+#if RTLNX_VER_MIN(5,3,0) || RTLNX_RHEL_MIN(8,4)
drm_gem_object_put(obj);
#else
drm_gem_object_put_unlocked(obj);
Index: VirtualBox-6.1.20/src/VBox/Additions/linux/drm/vbox_ttm.c
===================================================================
--- VirtualBox-6.1.20.orig/src/VBox/Additions/linux/drm/vbox_ttm.c
+++ VirtualBox-6.1.20/src/VBox/Additions/linux/drm/vbox_ttm.c
@@ -378,24 +378,9 @@ int vbox_mm_init(struct vbox_private *vb
return ret;
#endif
ret = ttm_bo_device_init(&vbox->ttm.bdev,
-#if RTLNX_VER_MAX(5,0,0) && !RTLNX_RHEL_MAJ_PREREQ(7,7) && !RTLNX_RHEL_MAJ_PREREQ(8,1)
- vbox->ttm.bo_global_ref.ref.object,
-#endif
&vbox_bo_driver,
-#if RTLNX_VER_MIN(5,11,0)
- dev->dev,
-#endif
-#if RTLNX_VER_MIN(3,15,0) || RTLNX_RHEL_MAJ_PREREQ(7,1)
dev->anon_inode->i_mapping,
-#endif
-#if RTLNX_VER_MIN(5,5,0) || RTLNX_RHEL_MIN(8,3)
dev->vma_offset_manager,
-#elif RTLNX_VER_MAX(5,2,0) && !RTLNX_RHEL_MAJ_PREREQ(8,2)
- DRM_FILE_PAGE_OFFSET,
-#endif
-#if RTLNX_VER_MIN(5,11,0)
- false,
-#endif
true);
if (ret) {
DRM_ERROR("Error initialising bo driver; %d\n", ret);
@@ -580,7 +565,7 @@ err_free_vboxbo:
static inline u64 vbox_bo_gpu_offset(struct vbox_bo *bo)
{
-#if RTLNX_VER_MIN(5,9,0) || RTLNX_RHEL_MIN(8,4)
+#if RTLNX_VER_MIN(5,3,0) || RTLNX_RHEL_MIN(8,4)
return bo->bo.mem.start << PAGE_SHIFT;
#else
return bo->bo.offset;