diff options
author | Zhi Wang | 2017-09-12 15:51:10 +0200 |
---|---|---|
committer | Zhenyu Wang | 2017-11-16 04:46:53 +0100 |
commit | 497aa3f5e3bdb6bea5994f7075e2f2df2377d70e (patch) | |
tree | 6898fe9353422a7ed3047cf6e3a1e48f373c1f06 /drivers/gpu/drm/i915/gvt/scheduler.c | |
parent | drm/i915/gvt: Factor out vGPU workload creation/destroy (diff) | |
download | kernel-qcow2-linux-497aa3f5e3bdb6bea5994f7075e2f2df2377d70e.tar.gz kernel-qcow2-linux-497aa3f5e3bdb6bea5994f7075e2f2df2377d70e.tar.xz kernel-qcow2-linux-497aa3f5e3bdb6bea5994f7075e2f2df2377d70e.zip |
drm/i915/gvt: Factor out prepare_workload()
Factor out prepare_workload() for the following re-factor.
Signed-off-by: Zhi Wang <zhi.a.wang@intel.com>
Diffstat (limited to 'drivers/gpu/drm/i915/gvt/scheduler.c')
-rw-r--r-- | drivers/gpu/drm/i915/gvt/scheduler.c | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/drivers/gpu/drm/i915/gvt/scheduler.c b/drivers/gpu/drm/i915/gvt/scheduler.c index 10ccb05d0e8d..3d1435f55c7b 100644 --- a/drivers/gpu/drm/i915/gvt/scheduler.c +++ b/drivers/gpu/drm/i915/gvt/scheduler.c @@ -325,6 +325,16 @@ err_scan: return ret; } +static int prepare_workload(struct intel_vgpu_workload *workload) +{ + int ret = 0; + + if (workload->prepare) + ret = workload->prepare(workload); + + return ret; +} + static int dispatch_workload(struct intel_vgpu_workload *workload) { struct intel_vgpu *vgpu = workload->vgpu; @@ -344,12 +354,10 @@ static int dispatch_workload(struct intel_vgpu_workload *workload) if (ret) goto out; - if (workload->prepare) { - ret = workload->prepare(workload); - if (ret) { - engine->context_unpin(engine, shadow_ctx); - goto out; - } + ret = prepare_workload(workload); + if (ret) { + engine->context_unpin(engine, shadow_ctx); + goto out; } out: |