1. 12 Dec, 2013 4 commits
    • Chris Wilson's avatar
      drm/i915: Prevent double unref following alloc failure during execbuffer · 9ae9ab52
      Chris Wilson authored
      Whilst looking up the objects required for an execbuffer, an untimely
      allocation failure in creating the vma results in the object being
      unreferenced from two lists. The ownership during the lookup is meant to
      be moved from the list of objects being looked to the vma, and this
      double unreference upon error results in a use-after-free.
      
      Fixes regression from
      commit 27173f1f
      Author: Ben Widawsky <ben@bwidawsk.net>
      Date:   Wed Aug 14 11:38:36 2013 +0200
      
          drm/i915: Convert execbuf code to use vmas
      
      Based on the fix by Ben Widawsky.
      Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Cc: Ben Widawsky <ben@bwidawsk.net>
      Cc: stable@vger.kernel.org
      [danvet: Bikeshed the crucial comment above the ownership transfer as
      discussed on irc.]
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      9ae9ab52
    • Dave Airlie's avatar
      Merge branch 'drm-tda998x-3.12-fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-cubox into drm-fixes · 5c015db7
      Dave Airlie authored
      These four patches fix a few issues discovered since the initial merge,
      which have been reviewed by Rob Clark and Thierry Reding.
      
      * 'drm-tda998x-3.12-fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-cubox:
        DRM: Armada: prime refcounting bug fix
        DRM: Armada: fix printing of phys_addr_t/dma_addr_t
        DRM: Armada: destroy framebuffer after helper
        DRM: Armada: implement lastclose() for fbhelper
      5c015db7
    • Dave Airlie's avatar
      Merge tag 'drm-intel-fixes-2013-12-11' of... · 25945b66
      Dave Airlie authored
      Merge tag 'drm-intel-fixes-2013-12-11' of git://people.freedesktop.org/~danvet/drm-intel into drm-fixes
      
      Just a bunch of regression fixes plus a few patches for long-standing
      issues in gem corner-cases that we've hunted down in the past weeks. Since
      apparently people hit those in the wild (and we also have nice igts for
      them) I've opted for -fixes and cc: stable.
      
      There's 1-2 things oustanding on top of this where I'm still waiting on
      confirmation from testing, but nothing really scary.
      
      * tag 'drm-intel-fixes-2013-12-11' of git://people.freedesktop.org/~danvet/drm-intel:
        drm/i915: don't update the dri1 breadcrumb with modesetting
        drm/i915: Repeat eviction search after idling the GPU
        drm/i915: Fix use-after-free in do_switch
        drm/i915: fix pm init ordering
        drm/i915: Hold mutex across i915_gem_release
        drm/i915: Skip clock checks on BDW
        drm/i915: Do not clobber config status after a forced restore of hw state
        drm/i915: Take modeset locks around intel_modeset_setup_hw_state()
      25945b66
    • Dave Airlie's avatar
      Merge branch 'bdw-fixes' of git://people.freedesktop.org/~danvet/drm-intel into drm-fixes · 62a3a126
      Dave Airlie authored
      As promised bdw fixes come separate for now. Just a few minior things.
      
      * 'bdw-fixes' of git://people.freedesktop.org/~danvet/drm-intel:
        drm/i915/bdw: PIPE_[BC] I[ME]R moved to powerwell
        drm/i915/bdw: Limit GTT to 2GB
        drm/i915/bdw: Add comment about gen8 HWS PGA
        drm/i915/bdw: Free correct number of ppgtt pages
        drm/i915/bdw: Do gen6 style reset for gen8
        drm/i915/bdw: GEN8 backlight support
        drm/i915/bdw: Add BDW to ULT macro
      62a3a126
  2. 11 Dec, 2013 1 commit
    • Daniel Vetter's avatar
      drm/i915: don't update the dri1 breadcrumb with modesetting · 6c719fac
      Daniel Vetter authored
      The update is horribly racy since it doesn't protect at all against
      concurrent closing of the master fd. And it can't really since that
      requires us to grab a mutex.
      
      Instead of jumping through hoops and offloading this to a worker
      thread just block this bit of code for the modesetting driver.
      
      Note that the race is fairly easy to hit since we call the breadcrumb
      function for any interrupt. So the vblank interrupt (which usually
      keeps going for a bit) is enough. But even if we'd block this and only
      update the breadcrumb for user interrupts from the CS we could hit
      this race with kms/gem userspace: If a non-master is waiting somewhere
      (and hence has interrupts enabled) and the master closes its fd
      (probably due to crashing).
      
      v2: Add a code comment to explain why fixing this for real isn't
      really worth it. Also improve the commit message a bit.
      
      v3: Fix the spelling in the comment.
      Reported-by: default avatarEugene Shatokhin <eugene.shatokhin@rosalab.ru>
      Cc: Eugene Shatokhin <eugene.shatokhin@rosalab.ru>
      Cc: stable@vger.kernel.org
      Acked-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Tested-by: default avatarEugene Shatokhin <eugene.shatokhin@rosalab.ru>
      Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
      6c719fac
  3. 10 Dec, 2013 26 commits
  4. 09 Dec, 2013 9 commits