--- vbox_drv.h.orig 2020-09-18 01:41:29.504934215 -0400 +++ vbox_drv.h 2020-09-21 04:59:11.893135153 -0400 @@ -147,9 +147,7 @@ #define S64_MIN ((s64)(-S64_MAX - 1)) #endif -#if RTLNX_VER_MAX(5,5,0) -# include -#else /* >= 5.5.0 */ +#if RTLNX_VER_MIN(5,5,0) || RTLNX_RHEL_MIN(8,3) # include # include # include @@ -157,7 +155,9 @@ # include # include # include -#endif /* >= 5.5.0 */ +#else /* < 5.5.0 || RHEL < 8.3 */ +# include +#endif #if RTLNX_VER_MIN(4,11,0) || RTLNX_RHEL_MAJ_PREREQ(7,5) # include #endif @@ -294,10 +294,10 @@ #undef CURSOR_PIXEL_COUNT #undef CURSOR_DATA_SIZE -#if RTLNX_VER_MAX(4,19,0) -int vbox_driver_load(struct drm_device *dev, unsigned long flags); -#else +#if RTLNX_VER_MIN(4,19,0) || RTLNX_RHEL_MIN(8,3) int vbox_driver_load(struct drm_device *dev); +#else +int vbox_driver_load(struct drm_device *dev, unsigned long flags); #endif #if RTLNX_VER_MIN(4,11,0) || RTLNX_RHEL_MAJ_PREREQ(7,5) void vbox_driver_unload(struct drm_device *dev); --- vbox_drv.c.orig 2020-09-18 03:59:43.372824508 -0400 +++ vbox_drv.c 2020-09-21 06:11:31.781316359 -0400 @@ -56,9 +56,7 @@ static int vbox_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent) { -#if RTLNX_VER_MAX(4,19,0) - return drm_get_pci_dev(pdev, ent, &driver); -#else +#if RTLNX_VER_MIN(4,19,0) || RTLNX_RHEL_MIN(8,3) struct drm_device *dev = NULL; int ret = 0; @@ -85,6 +83,8 @@ drm_dev_put(dev); err_drv_alloc: return ret; +#else /* > 4.19.0 || RHEL < 8.3 */ + return drm_get_pci_dev(pdev, ent, &driver); #endif } @@ -298,19 +298,18 @@ } static struct drm_driver driver = { -#if RTLNX_VER_MAX(5,4,0) - .driver_features = - DRIVER_MODESET | DRIVER_GEM | DRIVER_HAVE_IRQ | +#if RTLNX_VER_MAX(5,4,0) && !RTLNX_RHEL_MAJ_PREREQ(8,3) + .driver_features = DRIVER_MODESET | DRIVER_GEM | DRIVER_HAVE_IRQ | # if RTLNX_VER_MAX(5,1,0) && !RTLNX_RHEL_MAJ_PREREQ(8,1) DRIVER_IRQ_SHARED | # endif DRIVER_PRIME, -#else /* >= 5.4.0 */ - .driver_features = 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 */ .dev_priv_size = 0, -#if RTLNX_VER_MAX(4,19,0) +#if RTLNX_VER_MAX(4,19,0) && !RTLNX_RHEL_MAJ_PREREQ(8,3) /* Legacy hooks, but still supported. */ .load = vbox_driver_load, .unload = vbox_driver_unload, --- vbox_main.c.orig 2020-09-18 04:06:16.881708939 -0400 +++ vbox_main.c 2020-09-21 04:59:39.255040149 -0400 @@ -443,10 +443,10 @@ pci_iounmap(vbox->dev->pdev, vbox->guest_heap); } -#if RTLNX_VER_MAX(4,19,0) -int vbox_driver_load(struct drm_device *dev, unsigned long flags) -#else +#if RTLNX_VER_MIN(4,19,0) || RTLNX_RHEL_MIN(8,3) int vbox_driver_load(struct drm_device *dev) +#else +int vbox_driver_load(struct drm_device *dev, unsigned long flags) #endif { struct vbox_private *vbox; @@ -617,7 +617,7 @@ static inline u64 vbox_bo_mmap_offset(struct vbox_bo *bo) { -#if RTLNX_VER_MIN(5,4,0) +#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; --- vbox_mode.c.orig 2020-09-18 04:27:07.535725873 -0400 +++ vbox_mode.c 2020-09-21 04:59:53.557990482 -0400 @@ -394,13 +394,13 @@ static struct drm_encoder *vbox_best_single_encoder(struct drm_connector *connector) { -#if RTLNX_VER_MIN(5,5,0) +#if RTLNX_VER_MIN(5,5,0) || RTLNX_RHEL_MIN(8,3) struct drm_encoder *encoder; /* There is only one encoder per connector */ drm_connector_for_each_possible_encoder(connector, encoder) return encoder; -#else /* < 5.5 */ +#else /* < 5.5 || RHEL < 8.3 */ int enc_id = connector->encoder_ids[0]; /* pick the encoder ids */ @@ -410,7 +410,7 @@ # else return drm_encoder_find(connector->dev, enc_id); # endif -#endif /* < 5.5 */ +#endif /* < 5.5 || RHEL < 8.3 */ return NULL; } --- vbox_ttm.c.orig 2020-09-18 04:59:57.147642037 -0400 +++ vbox_ttm.c 2020-09-18 08:43:39.908449297 -0400 @@ -299,7 +299,7 @@ #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) +#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,