diff options
author | Ben Skeggs <[email protected]> | 2018-12-11 14:50:02 +1000 |
---|---|---|
committer | Ben Skeggs <[email protected]> | 2018-12-11 15:37:46 +1000 |
commit | 3968d6920bf3fef56eab1f21e71d135ef43e7b88 (patch) | |
tree | 83b9f01d3aa749cc4377cca48357858462a2544f /drivers/gpu/drm/nouveau/nvkm/subdev/fault/base.c | |
parent | 809724560f3403c2bc15a40cbe4efd55764ae8e2 (diff) |
drm/nouveau/fault: add explicit control over fault buffer interrupts
The GPU will continually fire interrupts while a fault buffer GET != PUT,
and to stop the spurious interrupts while the handler does its thing, we
were disabling the fault buffer temporarily.
This is not actually a great idea to begin with, and made worse by Volta
resetting GET/PUT when it's reactivated. So, let's not do that.
Signed-off-by: Ben Skeggs <[email protected]>
Diffstat (limited to 'drivers/gpu/drm/nouveau/nvkm/subdev/fault/base.c')
-rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/subdev/fault/base.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/fault/base.c b/drivers/gpu/drm/nouveau/nvkm/subdev/fault/base.c index 75587cafa0ce..4ba1e21e8fda 100644 --- a/drivers/gpu/drm/nouveau/nvkm/subdev/fault/base.c +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/fault/base.c @@ -28,14 +28,14 @@ static void nvkm_fault_ntfy_fini(struct nvkm_event *event, int type, int index) { struct nvkm_fault *fault = container_of(event, typeof(*fault), event); - fault->func->buffer.fini(fault->buffer[index]); + fault->func->buffer.intr(fault->buffer[index], false); } static void nvkm_fault_ntfy_init(struct nvkm_event *event, int type, int index) { struct nvkm_fault *fault = container_of(event, typeof(*fault), event); - fault->func->buffer.init(fault->buffer[index]); + fault->func->buffer.intr(fault->buffer[index], true); } static int |