Hello community,

here is the log from the commit of package virtualbox for openSUSE:Factory 
checked in at 2017-09-28 12:33:21
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/virtualbox (Old)
 and      /work/SRC/openSUSE:Factory/.virtualbox.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "virtualbox"

Thu Sep 28 12:33:21 2017 rev:142 rq:528710 version:5.1.28

Changes:
--------
--- /work/SRC/openSUSE:Factory/virtualbox/virtualbox.changes    2017-09-25 
13:54:31.664104135 +0200
+++ /work/SRC/openSUSE:Factory/.virtualbox.new/virtualbox.changes       
2017-09-28 12:33:23.860324061 +0200
@@ -1,0 +2,27 @@
+Mon Sep 25 20:15:56 UTC 2017 - larry.fin...@lwfinger.net
+
+- Make changes suggested in bsc#1060072
+  The specific changes are:
+  (1) Remove the test in vboxdrv.sh as the script tests for the wrong file. 
This is safe because
+      if the package is not installed, the script will not be there.
+  (2) Move VBoxDbg.so to package virtualbox-qt. With this change, packages 
libQt5Core, libQt5Gui
+      and libQt5Widgets are no longer needed with package virtualbox. As a 
result, a text-only
+      server no longer needs to load QT to support headless virtual machines.
+
+-------------------------------------------------------------------
+Sun Sep 24 14:45:02 UTC 2017 - larry.fin...@lwfinger.net
+
+- Update "fixes_for_4.14.patch" to handle additional API changes in kernel 
4.14.
+  These include the following:
+       removal of gamma_set and gamma_get from struct drm_fb_helper_funcs
+       removal of set_busid from struct drm_driver
+       replacement of drm_pci_init() with pci_register_driver()
+       replacement of drm_pci_exit() with pci_unregister_driver()
+       removal of load_lut from struct drm_crtc_helper_func
+
+-------------------------------------------------------------------
+Thu Sep 21 13:49:01 UTC 2017 - larry.fin...@lwfinger.net
+
+-  Update "fixes_for_4.14.patch" to handle missing SKB_GSO_UDP in kernel 4.14
+
+-------------------------------------------------------------------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ virtualbox.spec ++++++
--- /var/tmp/diff_new_pack.FzTsaE/_old  2017-09-28 12:33:26.495953463 +0200
+++ /var/tmp/diff_new_pack.FzTsaE/_new  2017-09-28 12:33:26.495953463 +0200
@@ -593,6 +593,7 @@
 install -m 755 VBoxBalloonCtrl                 %{buildroot}%{_vbox_instdir}
 install -m 755 webtest                         %{buildroot}%{_vbox_instdir}
 install -m 755 VBoxDTrace                      %{buildroot}%{_vbox_instdir}
+install -m 755 VBoxDbg.so                      %{buildroot}%{_vbox_instdir}
 # create links to vbox tools in PATH - they could be usefull for controlling 
vbox from command line
 ln -s %{_vbox_instdir}/VBoxManage              
%{buildroot}%{_bindir}/VBoxManage
 ln -s %{_vbox_instdir}/VBoxHeadless            
%{buildroot}%{_bindir}/VBoxHeadless
@@ -864,7 +865,6 @@
 %{_vbox_instdir}/DbgPlugInDiggers.so
 %{_vbox_instdir}/VBoxAuth.so
 %{_vbox_instdir}/VBoxAuthSimple.so
-%{_vbox_instdir}/VBoxDbg.so
 %{_vbox_instdir}/VBoxDragAndDropSvc.so
 %{_vbox_instdir}/VBoxVMMPreload.so
 #todo:double check - if this file should be assigned to the host side
@@ -910,6 +910,7 @@
 #qm's translations
 %{_datadir}/virtualbox/nls
 %{_vbox_instdir}/VirtualBox.so
+%{_vbox_instdir}/VBoxDbg.so
 %{_datadir}/pixmaps/virtualbox.png
 %{_datadir}/applications/%{name}.desktop
 %{_udevrulesdir}/60-vboxdrv.rules

++++++ fixes_for_4.14.patch ++++++
--- /var/tmp/diff_new_pack.FzTsaE/_old  2017-09-28 12:33:26.567943340 +0200
+++ /var/tmp/diff_new_pack.FzTsaE/_new  2017-09-28 12:33:26.571942778 +0200
@@ -1,16 +1,150 @@
+Patch VirtualBox source for changes in the kernel API for 4.14.x
+
+The following issues are addressed:
+       vfs_write() is replaced by kernel_write()
+       symbol SKB_GSO_UDP is removed
+       removal of gamma_set and gamma_get from struct drm_fb_helper_funcs
+       removal of set_busid from struct drm_driver
+       replacement of drm_pci_init() with pci_register_driver()
+       replacement of drm_pci_exit() with pci_unregister_driver()
+       removal of load_lut from struct drm_crtc_helper_func
+
+This patch is licensed under the MIT license.
+
+Signed-off-by: Larry Finger <larry.fin...@lwfinger.net>
+
 Index: VirtualBox-5.1.28/src/VBox/HostDrivers/VBoxPci/linux/VBoxPci-linux.c
 ===================================================================
 --- VirtualBox-5.1.28.orig/src/VBox/HostDrivers/VBoxPci/linux/VBoxPci-linux.c
 +++ VirtualBox-5.1.28/src/VBox/HostDrivers/VBoxPci/linux/VBoxPci-linux.c
-@@ -357,7 +357,11 @@ static int vboxPciFileWrite(struct file*
- 
-     fs_save = get_fs();
-     set_fs(get_ds());
+@@ -353,12 +353,17 @@ static void  vboxPciFileClose(struct fil
+ static int vboxPciFileWrite(struct file* file, unsigned long long offset, 
unsigned char* data, unsigned int size)
+ {
+     int          ret;
 +# if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 14, 0)
++
 +    ret = kernel_write(file, data, size, &offset);
 +#else
+     mm_segment_t fs_save;
+ 
+     fs_save = get_fs();
+     set_fs(get_ds());
      ret = vfs_write(file, data, size, &offset);
-+#endif
      set_fs(fs_save);
++#endif
      if (ret < 0)
          printk(KERN_DEBUG "vboxPciFileWrite: error %d\n", ret);
+ 
+Index: 
VirtualBox-5.1.28/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
+===================================================================
+--- 
VirtualBox-5.1.28.orig/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
++++ VirtualBox-5.1.28/src/VBox/HostDrivers/VBoxNetFlt/linux/VBoxNetFlt-linux.c
+@@ -124,6 +124,10 @@ typedef struct VBOXNETFLTNOTIFIER *PVBOX
+ #  define bstats stats
+ #  define qstats stats
+ # endif
++#endif 
++
++# if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 14, 0)
++#define SKB_GSO_UDP   0
+ #endif
+ 
+ #if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 20, 0)
+@@ -722,9 +726,11 @@ static struct sk_buff *vboxNetFltLinuxSk
+         case PDMNETWORKGSOTYPE_IPV4_TCP:
+             fGsoType = SKB_GSO_TCPV4;
+             break;
++# if LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0)
+         case PDMNETWORKGSOTYPE_IPV4_UDP:
+             fGsoType = SKB_GSO_UDP;
+             break;
++#endif
+         case PDMNETWORKGSOTYPE_IPV6_TCP:
+             fGsoType = SKB_GSO_TCPV6;
+             break;
+Index: VirtualBox-5.1.28/src/VBox/Additions/linux/drm/vbox_fb.c
+===================================================================
+--- VirtualBox-5.1.28.orig/src/VBox/Additions/linux/drm/vbox_fb.c
++++ VirtualBox-5.1.28/src/VBox/Additions/linux/drm/vbox_fb.c
+@@ -381,6 +381,7 @@ out:
+     return ret;
+ }
+ 
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0)
+ static void vbox_fb_gamma_set(struct drm_crtc *crtc, u16 red, u16 green,
+                    u16 blue, int regno)
+ {
+@@ -394,10 +395,13 @@ static void vbox_fb_gamma_get(struct drm
+     *green = regno;
+     *blue = regno;
+ }
++#endif
+ 
+ static struct drm_fb_helper_funcs vbox_fb_helper_funcs = {
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0)
+     .gamma_set = vbox_fb_gamma_set,
+     .gamma_get = vbox_fb_gamma_get,
++#endif
+     .fb_probe = vboxfb_create,
+ };
+ 
+Index: VirtualBox-5.1.28/src/VBox/Additions/linux/drm/vbox_drv.c
+===================================================================
+--- VirtualBox-5.1.28.orig/src/VBox/Additions/linux/drm/vbox_drv.c
++++ VirtualBox-5.1.28/src/VBox/Additions/linux/drm/vbox_drv.c
+@@ -281,7 +281,7 @@ static struct drm_driver driver =
+     .lastclose = vbox_driver_lastclose,
+     .master_set = vbox_master_set,
+     .master_drop = vbox_master_drop,
+-#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 18, 0) || defined(RHEL_73)
++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3, 18, 0) || defined(RHEL_73)) && 
LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0)
+     .set_busid = drm_pci_set_busid,
+ #endif
+ 
+@@ -326,11 +326,19 @@ static int __init vbox_init(void)
+     if (vbox_modeset == 0)
+         return -EINVAL;
+ 
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0)
+     return drm_pci_init(&driver, &vbox_pci_driver);
++#else
++    return pci_register_driver(&vbox_pci_driver);
++#endif
+ }
+ static void __exit vbox_exit(void)
+ {
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0)
+     drm_pci_exit(&driver, &vbox_pci_driver);
++#else
++    pci_unregister_driver(&vbox_pci_driver);
++#endif
+ }
+ 
+ module_init(vbox_init);
+Index: VirtualBox-5.1.28/src/VBox/Additions/linux/drm/vbox_mode.c
+===================================================================
+--- VirtualBox-5.1.28.orig/src/VBox/Additions/linux/drm/vbox_mode.c
++++ VirtualBox-5.1.28/src/VBox/Additions/linux/drm/vbox_mode.c
+@@ -152,10 +152,12 @@ static int vbox_set_view(struct drm_crtc
+     return 0;
+ }
+ 
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0)
+ static void vbox_crtc_load_lut(struct drm_crtc *crtc)
+ {
+ 
+ }
++#endif
+ 
+ static void vbox_crtc_dpms(struct drm_crtc *crtc, int mode)
+ {
+@@ -301,7 +303,9 @@ static const struct drm_crtc_helper_func
+     .mode_set = vbox_crtc_mode_set,
+     /* .mode_set_base = vbox_crtc_mode_set_base, */
+     .disable = vbox_crtc_disable,
++#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 14, 0)
+     .load_lut = vbox_crtc_load_lut,
++#endif
+     .prepare = vbox_crtc_prepare,
+     .commit = vbox_crtc_commit,
+ 

++++++ vboxdrv.sh ++++++
--- /var/tmp/diff_new_pack.FzTsaE/_old  2017-09-28 12:33:26.699924783 +0200
+++ /var/tmp/diff_new_pack.FzTsaE/_new  2017-09-28 12:33:26.699924783 +0200
@@ -52,20 +52,6 @@
 export USERNAME
 export USER=$USERNAME
 
-if test -n "${INSTALL_DIR}" && test -x "${INSTALL_DIR}/VirtualBox"; then
-    MODULE_SRC="${INSTALL_DIR}/src/vboxhost"
-elif test -x /usr/lib/virtualbox/VirtualBox; then
-    INSTALL_DIR=/usr/lib/virtualbox
-    MODULE_SRC="/usr/share/virtualbox/src/vboxhost"
-elif test -x "${SCRIPT_DIR}/VirtualBox"; then
-    # Executing from the build directory
-    INSTALL_DIR="${SCRIPT_DIR}"
-    MODULE_SRC="${INSTALL_DIR}/src"
-else
-    # Silently exit if the package was uninstalled but not purged.
-    # Applies to Debian packages only (but shouldn't hurt elsewhere)
-    exit 0
-fi
 VIRTUALBOX="${INSTALL_DIR}/VirtualBox"
 VBOXMANAGE="${INSTALL_DIR}/VBoxManage"
 BUILDINTMP="${MODULE_SRC}/build_in_tmp"



Reply via email to