Hello community,

here is the log from the commit of package virtualbox for openSUSE:Factory 
checked in at 2016-05-03 09:34:07
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/virtualbox (Old)
 and      /work/SRC/openSUSE:Factory/.virtualbox.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "virtualbox"

Changes:
--------
--- /work/SRC/openSUSE:Factory/virtualbox/virtualbox.changes    2016-04-06 
11:51:19.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.virtualbox.new/virtualbox.changes       
2016-05-03 09:34:10.000000000 +0200
@@ -1,0 +2,63 @@
+Tue Apr 26 11:23:41 UTC 2016 - [email protected]
+
+- drm-vboxvideo-Initialize-data-needed-to-map-fbdev-memory.patch:
+  * Add missing initialization of scanout buffer base and size for
+    proper fbdev support.
+- drm-vboxvideo-Add-delayed-update-to-support-fbdev.patch:
+  * Add support for delayed_io in fbdev-layer. 
+  (boo#977200).
+
+-------------------------------------------------------------------
+Fri Apr 22 19:38:06 UTC 2016 - [email protected]
+
+-   This submission fixes the bug in VB 5.0.18 that prevents proper operation
+    for guest VMs configured to use a LsiLogic adapter for disks. See ticket:
+    https://www.virtualbox.org/ticket/15317 for a description of the problem,
+    and changeset: https://www.virtualbox.org/changeset/60565/vbox for the fix,
+    which is implemented in file "changeset_60565.diff".
+ 
+    This update contains a fix for CVE-2016-0678. Bug report b.o.o #97366
+    discusses this vulnerability.
+
+-------------------------------------------------------------------
+Wed Apr 20 05:02:21 UTC 2016 - [email protected]
+
+-   Version bump to 5.0.18 (released 2016-04-18 by Oracle)
+
+This is a maintenance release. The following items were fixed and/or added:
+
+    GUI: position off-screen windows to be fully visible again on relaunch in 
consistence with default-behavior (bug #15226)
+    GUI: fixed the View menu / Full-screen Mode behavior on Mac OS X El Capitan
+    GUI: fixed a test which allowed to encrypt a hard disk with an empty 
password
+    GUI: fixed a crash under certain conditions during VM shutdown
+    GUI: fixed the size of the VM list scrollbar in the VM selector when 
entering a group
+    PC speaker passthrough: fixes (Linux hosts only; bug #627)
+    Drag and drop: several fixes
+    SATA: fixed hotplug flag handling when EFI is used
+    Storage: fixed handling of encrypted disk images with SCSI controllers 
(bug #14812)
+    Storage: fixed possible crash with Solaris 7 if the BusLogic SCSI 
controller is used
+    USB: properly purge non-ASCII characters from USB strings (bugs #8801, 
#15222)
+    NAT Network: fixed 100% CPU load in VBoxNetNAT on Mac OS X under certain 
circumstances (bug #15223)
+    ACPI: fixed ACPI tables to make the display color management settings 
available again for older Windows versions (4.3.22 regression)
+    Guest Control: fixed VBoxManage copyfrom command (bug #14336)
+    Snapshots: fixed several problems when removing older snapshots (bug 
#15206)
+    VBoxManage: fixed --verbose output of the guestcontrol command
+    Windows hosts: hardening fixes required for recent Windows 10 insider 
builds (bugs #15245, #15296)
+    Windows hosts: fixed support of jumbo frames in with bridged networking 
(5.0.16 regression; bug #15209)
+    Windows hosts: don't prevent receiving multicast traffic if host-only 
adapters are installed (bug #8698)
+    Linux hosts: added support for the new naming scheme of NVME disks when 
creating raw disks
+    Solaris hosts / guests: properly sign the kernel modules (bug #12608)
+    Linux hosts / guests: Linux 4.5 fixes (bug #15251)
+    Linux hosts / guests: Linux 4.6 fixes (bug #15298)
+    Linux Additions: added a kernel graphics driver to support graphics when 
X.Org does not have root rights (bug #14732)
+    Linux/Solaris Additions: fixed several issues causing Linux/Solatis guests 
using software rendering when 3D acceleration is available
+    Windows Additions: fixed a hang with PowerPoint 2010 and the WDDM drivers 
if Aero is disabled  
+- Drop VirtualBox-5.0.17-r106108-r106140.patch, fixed upstream.
+
+-------------------------------------------------------------------
+Fri Apr 15 19:17:58 UTC 2016 - [email protected]
+
+-  Fix build error caused by removal of macro page_cache_release() from kernel.
+   File "vbox-replace-page-cache-release.diff" is used to modify code to use 
put_page() instead.
+
+-------------------------------------------------------------------

Old:
----
  VirtualBox-5.0.17-patched.tar.bz2
  VirtualBox-5.0.17-r106108-r106140.patch

New:
----
  VirtualBox-5.0.18-patched.tar.bz2
  changeset_60565.diff
  drm-vboxvideo-Add-delayed-update-to-support-fbdev.patch
  drm-vboxvideo-Initialize-data-needed-to-map-fbdev-memory.patch

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

Other differences:
------------------
++++++ virtualbox.spec ++++++
--- /var/tmp/diff_new_pack.l1tKTq/_old  2016-05-03 09:34:13.000000000 +0200
+++ /var/tmp/diff_new_pack.l1tKTq/_new  2016-05-03 09:34:13.000000000 +0200
@@ -19,7 +19,7 @@
 %define _vbox_instdir  %{_libexecdir}/virtualbox
 %define _udevrulesdir %{_libexecdir}/udev/rules.d
 Name:           virtualbox
-Version:        5.0.17
+Version:        5.0.18
 Release:        0
 Summary:        VirtualBox is an Emulator
 License:        GPL-2.0+
@@ -83,10 +83,13 @@
 Patch108:       virtualbox-snpritnf-buffer-overflow.patch
 # Patch to add code to explain USB Passthru
 Patch109:       vbox-usb-warning.diff
-# Upgrade sources from r106108 to r106140
-Patch110:       VirtualBox-5.0.17-r106108-r106140.patch
 # Prevent Guest Additions from creating wrong SONAME
 Patch111:       vbox_prevent_wrong_SONAME.patch
+# Apply Changeset 60565 - Fix bug in DevLsiLogicSCSI.cpp
+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
 #
 BuildRequires:  LibVNCServer-devel
 BuildRequires:  SDL-devel
@@ -317,8 +320,10 @@
 %patch107 -p1
 %patch108 -p1
 %patch109 -p1
-%patch110 -p0
 %patch111 -p1
+%patch112 -p1
+%patch113 -p1
+%patch114 -p1
 #copy user manual
 cp %{SOURCE1} UserManual.pdf
 #copy kbuild config

++++++ UserManual.pdf ++++++
(binary differes)

++++++ VirtualBox-5.0.17-patched.tar.bz2 -> VirtualBox-5.0.18-patched.tar.bz2 
++++++
/work/SRC/openSUSE:Factory/virtualbox/VirtualBox-5.0.17-patched.tar.bz2 
/work/SRC/openSUSE:Factory/.virtualbox.new/VirtualBox-5.0.18-patched.tar.bz2 
differ: char 11, line 1


++++++ changeset_60565.diff ++++++
Index: VirtualBox-5.0.18/src/VBox/Devices/Storage/DevLsiLogicSCSI.cpp
===================================================================
--- VirtualBox-5.0.18.orig/src/VBox/Devices/Storage/DevLsiLogicSCSI.cpp
+++ VirtualBox-5.0.18/src/VBox/Devices/Storage/DevLsiLogicSCSI.cpp
@@ -3889,7 +3889,7 @@ static DECLCALLBACK(int) lsilogicR3IsaIO
     else if (RT_FAILURE(rc))
         AssertMsgFailed(("Writing BIOS register failed %Rrc\n", rc));
 
-    return rc;
+    return VINF_SUCCESS;
 }
 
 /**
++++++ drm-vboxvideo-Add-delayed-update-to-support-fbdev.patch ++++++
From: Egbert Eich <[email protected]>
Date: Mon Apr 25 16:47:41 2016 +0200
Subject: drm/vboxvideo: Add delayed update to support fbdev
Patch-mainline: Not yet
Git-commit: 0671f61d2a240e26c02d5a4d5cb993e1a446e601
References: boo#977200

Due to the virtrual nature of the emulated hardware, the
hardware needs help to know about updates to screen content.
The fb layer provides this with 'deferred IO'.
This patch adds support for this to the vboxvideo DRM driver.

Signed-off-by: Egbert Eich <[email protected]>
Signed-off-by: Egbert Eich <[email protected]>
---
 src/VBox/Additions/linux/drm/vbox_fb.c | 36 ++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)
diff --git a/src/VBox/Additions/linux/drm/vbox_fb.c 
b/src/VBox/Additions/linux/drm/vbox_fb.c
index 8e0e40d..e8c5a60 100644
--- a/src/VBox/Additions/linux/drm/vbox_fb.c
+++ b/src/VBox/Additions/linux/drm/vbox_fb.c
@@ -68,6 +68,7 @@
 #include <drm/drm_crtc_helper.h>
 #include "vbox_drv.h"
 
+#define VBOX_DIRTY_DELAY (HZ / 30)
 /**
  * Tell the host about dirty rectangles to update.
  */
@@ -162,6 +163,38 @@ static void vbox_dirty_update(struct vbox_fbdev *fbdev,
     vbox_bo_unreserve(bo);
 }
 
+static void vbox_deferred_io(struct fb_info *info,
+                             struct list_head *pagelist)
+{
+        struct vbox_fbdev *fbdev = info->par;
+        unsigned long start, end, min, max;
+        struct page *page;
+        int y1, y2;
+
+        min = ULONG_MAX;
+        max = 0;
+        list_for_each_entry(page, pagelist, lru) {
+                start = page->index << PAGE_SHIFT;
+                end = start + PAGE_SIZE - 1;
+                min = min(min, start);
+                max = max(max, end);
+        }
+
+        if (min < max) {
+                y1 = min / info->fix.line_length;
+                y2 = (max / info->fix.line_length) + 1;
+                printk(KERN_INFO "%s: Calling dirty update: 0, %d, %d, %d\n",
+                       __func__, y1, info->var.xres, y2 - y1 - 1);
+                vbox_dirty_update(fbdev, 0, y1, info->var.xres, y2 - y1 - 1);
+        }
+}
+
+static struct fb_deferred_io vbox_defio =
+{
+        .delay          = VBOX_DIRTY_DELAY,
+        .deferred_io    = vbox_deferred_io,
+};
+
 static void vbox_fillrect(struct fb_info *info,
              const struct fb_fillrect *rect)
 {
@@ -324,6 +357,9 @@ static int vboxfb_create(struct drm_fb_helper *helper,
     info->screen_base = sysram;
     info->screen_size = size;
 
+    info->fbdefio = &vbox_defio;
+    fb_deferred_io_init(info);
+
     info->pixmap.flags = FB_PIXMAP_SYSTEM;
 
     DRM_DEBUG_KMS("allocated %dx%d\n",
++++++ drm-vboxvideo-Initialize-data-needed-to-map-fbdev-memory.patch ++++++
From: Egbert Eich <[email protected]>
Date: Mon Apr 25 09:32:04 2016 +0200
Subject: drm/vboxvideo: Initialize data needed to map fbdev memory
Patch-mainline: Not yet
Git-commit: 4153ec3d267288659638e2397bcae5298e7f5930
References: boo#977200

Due to a missing initialization there was no way to map fbdev memory.
Thus for example using the Xserver with the fbdev driver failed.
This fix adds initialization for fix.smem_start and fix.smem_len
in the fb_info structure, which fixes this problem.

Signed-off-by: Egbert Eich <[email protected]>
Signed-off-by: Egbert Eich <[email protected]>
---
 src/VBox/Additions/linux/drm/vbox_drv.h  | 1 +
 src/VBox/Additions/linux/drm/vbox_fb.c   | 8 ++++++++
 src/VBox/Additions/linux/drm/vbox_mode.c | 2 ++
 3 files changed, 11 insertions(+)
diff --git a/src/VBox/Additions/linux/drm/vbox_drv.h 
b/src/VBox/Additions/linux/drm/vbox_drv.h
index fa3eb3c..a9bc156 100644
--- a/src/VBox/Additions/linux/drm/vbox_drv.h
+++ b/src/VBox/Additions/linux/drm/vbox_drv.h
@@ -227,6 +227,7 @@ int vbox_framebuffer_init(struct drm_device *dev,
 int vbox_fbdev_init(struct drm_device *dev);
 void vbox_fbdev_fini(struct drm_device *dev);
 void vbox_fbdev_set_suspend(struct drm_device *dev, int state);
+void vbox_fbdev_set_base(struct vbox_private *vbox, unsigned long gpu_addr);
 
 struct vbox_bo {
     struct ttm_buffer_object bo;
diff --git a/src/VBox/Additions/linux/drm/vbox_fb.c 
b/src/VBox/Additions/linux/drm/vbox_fb.c
index a90f11d..8e0e40d 100644
--- a/src/VBox/Additions/linux/drm/vbox_fb.c
+++ b/src/VBox/Additions/linux/drm/vbox_fb.c
@@ -452,3 +452,11 @@ void vbox_fbdev_set_suspend(struct drm_device *dev, int 
state)
 
     fb_set_suspend(vbox->fbdev->helper.fbdev, state);
 }
+
+void vbox_fbdev_set_base(struct vbox_private *vbox, unsigned long gpu_addr)
+{
+        vbox->fbdev->helper.fbdev->fix.smem_start =
+                vbox->fbdev->helper.fbdev->apertures->ranges[0].base +
+                gpu_addr;
+        vbox->fbdev->helper.fbdev->fix.smem_len = vbox->vram_size - gpu_addr;
+}
diff --git a/src/VBox/Additions/linux/drm/vbox_mode.c 
b/src/VBox/Additions/linux/drm/vbox_mode.c
index d00ebff..40b6eb0 100644
--- a/src/VBox/Additions/linux/drm/vbox_mode.c
+++ b/src/VBox/Additions/linux/drm/vbox_mode.c
@@ -224,6 +224,8 @@ static int vbox_crtc_do_set_base(struct drm_crtc *crtc,
         ret = ttm_bo_kmap(&bo->bo, 0, bo->bo.num_pages, &bo->kmap);
         if (ret)
             DRM_ERROR("failed to kmap fbcon\n");
+        else
+            vbox_fbdev_set_base(vbox, gpu_addr);
     }
     vbox_bo_unreserve(bo);
 


Reply via email to