drm/etnaviv: move workqueue to be per GPU
authorLucas Stach <l.stach@pengutronix.de>
Fri, 17 Nov 2017 16:43:37 +0000 (17:43 +0100)
committerLucas Stach <l.stach@pengutronix.de>
Tue, 2 Jan 2018 16:24:28 +0000 (17:24 +0100)
commita7790d78092e5904beb4de71e1ea43b260d2092a
tree30a220935078220766201031fe305d4db7e3f166
parent4375ffffbf099f14815380a3d9e5784ffc55bf31
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>
drivers/gpu/drm/etnaviv/etnaviv_drv.c
drivers/gpu/drm/etnaviv/etnaviv_drv.h
drivers/gpu/drm/etnaviv/etnaviv_gpu.c
drivers/gpu/drm/etnaviv/etnaviv_gpu.h