diff --git a/vbox-4.7.patch b/vbox-4.7.patch new file mode 100644 index 0000000..8d428f5 --- /dev/null +++ b/vbox-4.7.patch @@ -0,0 +1,76 @@ +Index: VirtualBox-5.0.18/src/VBox/HostDrivers/VBoxNetAdp/linux/VBoxNetAdp-linux.c +=================================================================== +--- VirtualBox-5.0.18.orig/src/VBox/HostDrivers/VBoxNetAdp/linux/VBoxNetAdp-linux.c ++++ VirtualBox-5.0.18/src/VBox/HostDrivers/VBoxNetAdp/linux/VBoxNetAdp-linux.c +@@ -152,7 +152,11 @@ static int vboxNetAdpLinuxXmit(struct sk + pPriv->Stats.tx_packets++; + pPriv->Stats.tx_bytes += pSkb->len; + /* Update transmission time stamp. */ ++# if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 7, 0) ++ netif_trans_update(pNetDev); ++# else + pNetDev->trans_start = jiffies; ++# endif + /* Nothing else to do, just free the sk_buff. */ + dev_kfree_skb(pSkb); + return 0; +Index: VirtualBox-5.0.18/src/VBox/Additions/linux/drm/vbox_drv.h +=================================================================== +--- VirtualBox-5.0.18.orig/src/VBox/Additions/linux/drm/vbox_drv.h ++++ VirtualBox-5.0.18/src/VBox/Additions/linux/drm/vbox_drv.h +@@ -285,7 +285,11 @@ static inline int vbox_bo_reserve(struct + { + int ret; + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 7, 0) ++ ret = ttm_bo_reserve(&bo->bo, true, no_wait, NULL); ++#else + ret = ttm_bo_reserve(&bo->bo, true, no_wait, false, 0); ++#endif + if (ret) + { + if (ret != -ERESTARTSYS && ret != -EBUSY) +Index: VirtualBox-5.0.18/src/VBox/Additions/linux/drm/vbox_main.c +=================================================================== +--- VirtualBox-5.0.18.orig/src/VBox/Additions/linux/drm/vbox_main.c ++++ VirtualBox-5.0.18/src/VBox/Additions/linux/drm/vbox_main.c +@@ -203,7 +203,11 @@ vbox_user_framebuffer_create(struct drm_ + int ret; + + LogFunc(("vboxvideo: %d\n", __LINE__)); ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 7, 0) ++ obj = drm_gem_object_lookup(filp, mode_cmd->handles[0]); ++#else + obj = drm_gem_object_lookup(dev, filp, mode_cmd->handles[0]); ++#endif + if (obj == NULL) + return ERR_PTR(-ENOENT); + +@@ -546,7 +550,11 @@ vbox_dumb_mmap_offset(struct drm_file *f + LogFunc(("vboxvideo: %d: dev=%p, handle=%u\n", __LINE__, + dev, (unsigned)handle)); + mutex_lock(&dev->struct_mutex); ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 7, 0) ++ obj = drm_gem_object_lookup(file, handle); ++#else + obj = drm_gem_object_lookup(dev, file, handle); ++#endif + if (obj == NULL) { + ret = -ENOENT; + goto out_unlock; +Index: VirtualBox-5.0.18/src/VBox/Additions/linux/drm/vbox_mode.c +=================================================================== +--- VirtualBox-5.0.18.orig/src/VBox/Additions/linux/drm/vbox_mode.c ++++ VirtualBox-5.0.18/src/VBox/Additions/linux/drm/vbox_mode.c +@@ -714,7 +714,11 @@ static int vbox_cursor_set2(struct drm_c + || !(caps & VMMDEV_MOUSE_HOST_WANTS_ABSOLUTE)) + return -EINVAL; + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 7, 0) ++ obj = drm_gem_object_lookup(file_priv, handle); ++#else + obj = drm_gem_object_lookup(crtc->dev, file_priv, handle); ++#endif + if (obj) + { + bo = gem_to_vbox_bo(obj); diff --git a/virtualbox.changes b/virtualbox.changes index 303f405..b5a0173 100644 --- a/virtualbox.changes +++ b/virtualbox.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Tue Jun 7 19:03:36 UTC 2016 - Larry.Finger@lwfinger.net + +- Add file "vbox-4.7.patch" to all builds on Kernel_HEAD_standard/x86_64 now that 4.7-rcX is released. + ------------------------------------------------------------------- Wed May 18 14:09:11 UTC 2016 - hpj@urpla.net diff --git a/virtualbox.spec b/virtualbox.spec index c622597..f70631f 100644 --- a/virtualbox.spec +++ b/virtualbox.spec @@ -90,6 +90,8 @@ Patch112: changeset_60565.diff # Patch to make xf86-video-fbdev work on vboxvideodrm Patch114: drm-vboxvideo-Initialize-data-needed-to-map-fbdev-memory.patch Patch113: drm-vboxvideo-Add-delayed-update-to-support-fbdev.patch +# Patch to allow 5.0.18 to build on kernel 4.7 +Patch115: vbox-4.7.patch # BuildRequires: LibVNCServer-devel BuildRequires: SDL-devel @@ -323,6 +325,7 @@ This package contains icons for guest desktop files that were created on the des %patch112 -p1 %patch113 -p1 %patch114 -p1 +%patch115 -p1 #copy user manual cp %{SOURCE1} UserManual.pdf #copy kbuild config