]> git.baikalelectronics.ru Git - kernel.git/commit
drm/i915/gvt: Fix workload request allocation before request add
authorZhenyu Wang <zhenyuw@linux.intel.com>
Sat, 29 Dec 2018 03:13:10 +0000 (11:13 +0800)
committerZhenyu Wang <zhenyuw@linux.intel.com>
Wed, 9 Jan 2019 04:59:09 +0000 (12:59 +0800)
commit6bb27bdab3eb3b82fed1658e0fae1788b144e76f
treee10afabea19ecd5a56101cb7dbfc9395236a9754
parentf9bb4b753eb00c02014e4467a28609f4f6ac7f88
drm/i915/gvt: Fix workload request allocation before request add

In commit 40588632a239 ("drm/i915/gvt: Fix crash after request->hw_context change"),
forgot to handle workload scan path in ELSP handler case which was to
optimize scanning earlier instead of in gvt submission thread, so request
alloc and add was splitting then which is against right process.

This trys to do a partial revert of that commit which still has workload
request alloc helper and make sure shadow state population is handled after
request alloc for target state buffer.

v3: Fix missed workload status setting in request alloc error path
v2: Fix dispatch workload err path that should add request after alloc anyway.

Fixes: 40588632a239 ("drm/i915/gvt: Fix crash after request->hw_context change")
Cc: Bin Yang <bin.yang@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Tested-by: Bin Yang <bin.yang@intel.com>
Reviewed-by: Xiaolin Zhang <xiaolin.zhang@intel.com>
Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
drivers/gpu/drm/i915/gvt/scheduler.c
drivers/gpu/drm/i915/gvt/scheduler.h