aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/etnaviv/etnaviv_gpu.h
diff options
context:
space:
mode:
authorLucas Stach <l.stach@pengutronix.de>2017-11-17 17:43:37 +0100
committerLucas Stach <l.stach@pengutronix.de>2018-01-02 17:24:28 +0100
commita7790d78092e5904beb4de71e1ea43b260d2092a (patch)
tree30a220935078220766201031fe305d4db7e3f166 /drivers/gpu/drm/etnaviv/etnaviv_gpu.h
parentdrm/etnaviv: remove switch_context member from etnaviv_gpu (diff)
downloadlinux-dev-a7790d78092e5904beb4de71e1ea43b260d2092a.tar.xz
linux-dev-a7790d78092e5904beb4de71e1ea43b260d2092a.zip
drm/etnaviv: move workqueue to be per GPU
While the etnaviv workqueue needs to be ordered, as we rely on work items being executed in queuing order, this is only true for a single GPU. Having a shared workqueue for all GPUs in the system limits concurrency artificially. Getting each GPU its own ordered workqueue still meets our ordering expectations and enables retire workers to run concurrently. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Reviewed-by: Philipp Zabel <p.zabel@pengutronix.de>
Diffstat (limited to 'drivers/gpu/drm/etnaviv/etnaviv_gpu.h')
-rw-r--r--drivers/gpu/drm/etnaviv/etnaviv_gpu.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gpu.h b/drivers/gpu/drm/etnaviv/etnaviv_gpu.h
index 15090bb68f5a..ccef6139cf70 100644
--- a/drivers/gpu/drm/etnaviv/etnaviv_gpu.h
+++ b/drivers/gpu/drm/etnaviv/etnaviv_gpu.h
@@ -106,6 +106,7 @@ struct etnaviv_gpu {
struct mutex lock;
struct etnaviv_chip_identity identity;
struct etnaviv_file_private *lastctx;
+ struct workqueue_struct *wq;
/* 'ring'-buffer: */
struct etnaviv_cmdbuf *buffer;