]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915: Abort command parsing for chained batches
authorBrad Volkin <bradley.d.volkin@intel.com>
Thu, 16 Oct 2014 19:24:42 +0000 (12:24 -0700)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 4 Nov 2014 13:04:54 +0000 (14:04 +0100)
commita4756afb8295ae3cfc43ba32b0e3a8ea6b8f4147
tree725cd1aebefa75a7b6a04100fd495fcbfe99e0d9
parent51da6c68c5cf79981196d50f3c0399716bdb7f7a
drm/i915: Abort command parsing for chained batches

libva uses chained batch buffers in a way that the command parser
can't generally handle. Fortunately, libva doesn't need to write
registers from batch buffers in the way that mesa does, so this
patch causes the driver to fall back to non-secure dispatch if
the parser detects a chained batch buffer.

Note: The 2nd hunk to munge the error code of the parser looks a bit
superflous. At least until we have the batch copy code ready and can
run the cmd parser in granting mode. But it isn't since we still need
to let existing libva buffers pass (though not with elevated privs
ofc!).

Testcase: igt/gem_exec_parse/chained-batch
Signed-off-by: Brad Volkin <bradley.d.volkin@intel.com>
[danvet: Add note - this confused me in review and Brad clarified
things (after a few mails ...).]
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_cmd_parser.c
drivers/gpu/drm/i915/i915_gem_execbuffer.c