Hello community, here is the log from the commit of package xf86-video-intel for openSUSE:Factory checked in at 2014-06-18 07:47:50 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/xf86-video-intel (Old) and /work/SRC/openSUSE:Factory/.xf86-video-intel.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xf86-video-intel" Changes: -------- --- /work/SRC/openSUSE:Factory/xf86-video-intel/xf86-video-intel.changes 2014-04-06 07:10:26.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.xf86-video-intel.new/xf86-video-intel.changes 2014-06-18 07:47:57.000000000 +0200 @@ -1,0 +2,57 @@ +Mon Jun 16 12:12:23 UTC 2014 - [email protected] + +- U_sna-Clear-our-private-hints-about-front-rendering-ex.patch + * sna: Clear our private hints about front rendering exported bo + (fdo#79999) + +------------------------------------------------------------------- +Wed Jun 11 16:37:30 UTC 2014 - [email protected] + +- Add patch U_sna_fix_scanout_creation_routine_for_old_kernels_3_11.patch + Make this driver-version usable with kernel <= 3.11 + +------------------------------------------------------------------- +Tue Jun 10 15:58:46 UTC 2014 - [email protected] + +- Update to 3.0 prerelease 2.99.912: + A final round of features. We have everything from support for variable + cursor sizes, support for the DRI3 and Present extensions, improved DRI2 + support, support for Xserver 1.16, userptr from kernel 3.16, and + precursory support for DP multistream transport, + * Avoid discarding dirty pixels when promoting a migration to cover the + whole pixmap. + Regression in 2.99.911 + https://bugs.freedesktop.org/show_bug.cgi?id=77063 + https://bugs.freedesktop.org/show_bug.cgi?id=77178 + * Avoid overextending degenerate lines (and consequentially accessing + pixels outside of our damaged area). + https://bugs.freedesktop.org/show_bug.cgi?id=77074 + * Fix subpixel glyph rendering on gen2 devices (830-865 chipsets) + Regression in 2.99.911 + https://bugs.freedesktop.org/show_bug.cgi?id=77201 + * Share the global pixman glyph cache between ZaphodHeads + https://bugs.freedesktop.org/show_bug.cgi?id=54707 + * Light up all connected outputs, even if their status is unknown, on + takeover from fbcon. This prevents loss of display after a resume + on recent kernels, for example. + https://bugs.freedesktop.org/show_bug.cgi?id=77768 + * Show the video overlay (when supported by the hardware) across all + outputs. + https://bugs.freedesktop.org/show_bug.cgi?id=77802 + * Do not discard damage when performing "BLT" spans inplace with the CPU. + Regression from 2.20.10 + * Avoid discarding IO buffers too early during their preparation for a + new batch + https://bugs.freedesktop.org/show_bug.cgi?id=79238 + * Fix fallback handling for displaying large scaled framebuffers (that + are too large to be scaled by the GPU in a single pass) + https://bugs.freedesktop.org/show_bug.cgi?id=79320 + * Listen to external modifications of backlight value and propagate + the notifications to RandR clients. This should make the GUI report + ACPI keypresses to change the backlight correctly. + https://bugs.freedesktop.org/show_bug.cgi?id=79699 + * UXA: fix pageflips with 3 heads. + * UXA: do not report a BadMatch error for DRI2GetMsc - as clients are + often unprepared and die when they get the unexpected error. + +------------------------------------------------------------------- Old: ---- xf86-video-intel-2.99.911.1.tar.bz2 New: ---- U_sna-Clear-our-private-hints-about-front-rendering-ex.patch U_sna_fix_scanout_creation_routine_for_old_kernels_3_11.patch xf86-video-intel-2.99.912.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xf86-video-intel.spec ++++++ --- /var/tmp/diff_new_pack.92gaY1/_old 2014-06-18 07:47:58.000000000 +0200 +++ /var/tmp/diff_new_pack.92gaY1/_new 2014-06-18 07:47:58.000000000 +0200 @@ -20,7 +20,7 @@ %define backlighthelper 0 Name: xf86-video-intel -Version: 2.99.911.1 +Version: 2.99.912 Release: 0 Summary: Intel video driver for the Xorg X server License: MIT @@ -32,6 +32,10 @@ # http://xorg.freedesktop.org/releases/individual/driver/ Source0: %{name}-%{version}.tar.bz2 Source99: baselibs.conf + +Patch1: U_sna_fix_scanout_creation_routine_for_old_kernels_3_11.patch +Patch2: U_sna-Clear-our-private-hints-about-front-rendering-ex.patch + %if %glamor Requires: glamor %endif @@ -101,6 +105,8 @@ %prep %setup -q +%patch1 -p1 +%patch2 -p1 %build autoreconf -fi ++++++ U_sna-Clear-our-private-hints-about-front-rendering-ex.patch ++++++ >From 243bd26ad31776b2dc45563107e669cf7b45fd91 Mon Sep 17 00:00:00 2001 From: Chris Wilson <[email protected]> Date: Sun, 15 Jun 2014 21:42:10 +0100 Subject: [PATCH] sna: Clear our private hints about front rendering exported bo Unlike GLXWindows, GLXPixmaps are rendered directly into, without a staging copy. Therefore we must treat those carefully when exported and clear our hints everytime control passes back to the Client. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=79999 Signed-off-by: Chris Wilson <[email protected]> --- src/sna/sna.h | 4 ++-- src/sna/sna_accel.c | 11 +++++++++-- src/sna/sna_dri2.c | 11 ++++++++++- 3 files changed, 21 insertions(+), 5 deletions(-) diff --git a/src/sna/sna.h b/src/sna/sna.h index a532b4a..7686944 100644 --- a/src/sna/sna.h +++ b/src/sna/sna.h @@ -148,7 +148,7 @@ struct sna_pixmap { uint32_t clear_color; #define SOURCE_BIAS 4 - uint16_t source_count; + uint8_t source_count; uint8_t pinned :4; #define PIN_SCANOUT 0x1 #define PIN_DRI2 0x2 @@ -159,7 +159,7 @@ struct sna_pixmap { #define MAPPED_NONE 0 #define MAPPED_GTT 1 #define MAPPED_CPU 2 - uint8_t flush :1; + uint8_t flush :2; uint8_t shm :1; uint8_t clear :1; uint8_t header :1; diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c index 930c40a..d48321d 100644 --- a/src/sna/sna_accel.c +++ b/src/sna/sna_accel.c @@ -16659,8 +16659,15 @@ void sna_accel_flush(struct sna *sna) priv->pixmap->drawable.serialNumber)); assert(priv->flush); if (sna_pixmap_move_to_gpu(priv->pixmap, - MOVE_READ | __MOVE_FORCE)) - kgem_bo_unclean(&sna->kgem, priv->gpu_bo); + MOVE_READ | __MOVE_FORCE)) { + if (priv->flush & 2) { + kgem_bo_unclean(&sna->kgem, priv->gpu_bo); + sna_damage_all(&priv->gpu_damage, priv->pixmap); + assert(priv->cpu_damage == NULL); + priv->clear = false; + priv->cpu = false; + } + } } (void)ret; } diff --git a/src/sna/sna_dri2.c b/src/sna/sna_dri2.c index 4bcc018..9801aab 100644 --- a/src/sna/sna_dri2.c +++ b/src/sna/sna_dri2.c @@ -584,7 +584,16 @@ sna_dri2_create_buffer(DrawablePtr draw, if (priv->gpu_bo->exec) sna->kgem.flush = 1; - priv->flush = true; + priv->flush |= 1; + if (draw->type == DRAWABLE_PIXMAP) { + /* DRI2 renders directly into GLXPixmaps, treat as hostile */ + kgem_bo_unclean(&sna->kgem, priv->gpu_bo); + sna_damage_all(&priv->gpu_damage, pixmap); + priv->clear = false; + priv->cpu = false; + priv->flush |= 2; + } + sna_accel_watch_flush(sna, 1); } -- 1.8.4.5 ++++++ U_sna_fix_scanout_creation_routine_for_old_kernels_3_11.patch ++++++ >From c9003c6d9602dba682e577ea7ce39990ea378db3 Mon Sep 17 00:00:00 2001 From: Chris Wilson <[email protected]> Date: Wed, 11 Jun 2014 14:29:59 +0000 Subject: sna: Fix scanout creation routine for old kernels <= 3.11 With an old kernel, we would fail to actually mark the display as part of the scanout domain, but proceed to assign it a fb id. This caused our asserts to report our bookkeeping error. Reported-by: Pavel Ondračka <[email protected]> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=79909 Signed-off-by: Chris Wilson <[email protected]> --- diff --git a/src/sna/kgem.c b/src/sna/kgem.c index f29f8fd..7582e07 100644 --- a/src/sna/kgem.c +++ b/src/sna/kgem.c @@ -4373,18 +4373,23 @@ static void __kgem_bo_make_scanout(struct kgem *kgem, arg.depth = scrn->depth; arg.handle = bo->handle; - if (gem_set_caching(kgem->fd, bo->handle, DISPLAY)) { - bo->scanout = true; + /* First move the scanout out of cached memory */ + if (kgem->has_llc) { + if (!gem_set_caching(kgem->fd, bo->handle, DISPLAY) && + !gem_set_caching(kgem->fd, bo->handle, UNCACHED)) + return; + } - /* Pre-emptively move the object into the mappable - * portion to avoid rebinding later when busy. - */ - if (bo->map__gtt == NULL) - bo->map__gtt = __kgem_bo_map__gtt(kgem, bo); - if (bo->map__gtt) { - *(uint32_t *)bo->map__gtt = 0; - bo->domain = DOMAIN_GTT; - } + bo->scanout = true; + + /* Then pre-emptively move the object into the mappable + * portion to avoid rebinding later when busy. + */ + if (bo->map__gtt == NULL) + bo->map__gtt = __kgem_bo_map__gtt(kgem, bo); + if (bo->map__gtt) { + *(uint32_t *)bo->map__gtt = 0; + bo->domain = DOMAIN_GTT; } if (do_ioctl(kgem->fd, DRM_IOCTL_MODE_ADDFB, &arg) == 0) { -- cgit v0.9.0.2-2-gbebe ++++++ xf86-video-intel-2.99.911.1.tar.bz2 -> xf86-video-intel-2.99.912.tar.bz2 ++++++ ++++ 169090 lines of diff (skipped) -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
