diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2022-06-01 13:47:19 +0300 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2022-11-09 03:44:46 +0300 |
commit | 8478cd5a740a092163c8ad5b6da1a1b488eb42bd (patch) | |
tree | 4d1b7ed6edf9111fd93f626ad59ffb573277e747 /drivers/gpu/drm/nouveau/include/nvkm/core/engine.h | |
parent | 565bfaf1f26af0e9fc9aafbb7053da1187afe9f4 (diff) | |
download | linux-8478cd5a740a092163c8ad5b6da1a1b488eb42bd.tar.xz |
drm/nouveau/nvkm: add locking to subdev/engine init paths
This wasn't really needed before; the main place this could race is with
channel recovery, but (through potentially fragile means) shouldn't have
been possible.
However, a number of upcoming patches benefit from having better control
over subdev init, necessitating some improvements here.
- allows subdev/engine oneinit() without init() (host/fifo patches)
- merges engine use locking/tracking into subdev, and extends it to fix
some issues that will arise with future usage patterns (acr patches)
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Reviewed-by: Lyude Paul <lyude@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/include/nvkm/core/engine.h')
-rw-r--r-- | drivers/gpu/drm/nouveau/include/nvkm/core/engine.h | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/drivers/gpu/drm/nouveau/include/nvkm/core/engine.h b/drivers/gpu/drm/nouveau/include/nvkm/core/engine.h index e58923b67d74..6d15c13509bf 100644 --- a/drivers/gpu/drm/nouveau/include/nvkm/core/engine.h +++ b/drivers/gpu/drm/nouveau/include/nvkm/core/engine.h @@ -12,12 +12,6 @@ struct nvkm_engine { const struct nvkm_engine_func *func; struct nvkm_subdev subdev; spinlock_t lock; - - struct { - refcount_t refcount; - struct mutex mutex; - bool enabled; - } use; }; struct nvkm_engine_func { |