diff options
author | Lucas Stach <l.stach@pengutronix.de> | 2017-11-17 17:43:37 +0100 |
---|---|---|
committer | Lucas Stach <l.stach@pengutronix.de> | 2018-01-02 17:24:28 +0100 |
commit | a7790d78092e5904beb4de71e1ea43b260d2092a (patch) | |
tree | 30a220935078220766201031fe305d4db7e3f166 /drivers/gpu/drm/etnaviv/etnaviv_drv.h | |
parent | drm/etnaviv: remove switch_context member from etnaviv_gpu (diff) | |
download | linux-a7790d78092e5904beb4de71e1ea43b260d2092a.tar.xz linux-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_drv.h')
-rw-r--r-- | drivers/gpu/drm/etnaviv/etnaviv_drv.h | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_drv.h b/drivers/gpu/drm/etnaviv/etnaviv_drv.h index d249acb6da08..8668bfd4abd5 100644 --- a/drivers/gpu/drm/etnaviv/etnaviv_drv.h +++ b/drivers/gpu/drm/etnaviv/etnaviv_drv.h @@ -56,18 +56,8 @@ struct etnaviv_drm_private { /* list of GEM objects: */ struct mutex gem_lock; struct list_head gem_list; - - struct workqueue_struct *wq; }; -static inline void etnaviv_queue_work(struct drm_device *dev, - struct work_struct *w) -{ - struct etnaviv_drm_private *priv = dev->dev_private; - - queue_work(priv->wq, w); -} - int etnaviv_ioctl_gem_submit(struct drm_device *dev, void *data, struct drm_file *file); |