1. 25 9月, 2010 2 次提交
    • C
      drm/i915: Adjust hangcheck EIO semantics · 30dbf0c0
      Chris Wilson 提交于
      Owain Ainsworth reported an issue between the interaction of the
      hangcheck and userspace immediately (and permanently) falling back to
      s/w rasterisation. In order to break the mutex and begin resetting the
      GPU, we must abort the current operation (usually within the wait) and
      climb sufficiently far back up the call chain to drop the mutex. In his
      implementation, Owain has a loop within the ioctl handler to detect the
      hang and then sleep until the error handler has run. I've chosen to
      return to userspace and report an EAGAIN which should trigger the
      userspace ioctl handler to repeat the call (simply because it felt less
      invasive...). Before hitting a wedged GPU, we then wait upon completion
      of the error handler.
      Reported-by: NOwain G. Ainsworth <zerooa@googlemail.com>
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      30dbf0c0
    • C
      drm/i915: Only hold a process-local lock whilst throttling. · f787a5f5
      Chris Wilson 提交于
      Avoid cause latencies in other clients by not taking the global struct
      mutex and moving the per-client request manipulation a local per-client
      mutex. For example, this allows a compositor to schedule a page-flip
      (through X) whilst an OpenGL application is monopolising the GPU.
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      f787a5f5
  2. 24 9月, 2010 9 次提交
  3. 23 9月, 2010 3 次提交
  4. 22 9月, 2010 4 次提交
  5. 21 9月, 2010 22 次提交