diff options
Diffstat (limited to 'drivers/gpu/drm/nouveau/nouveau_abi16.c')
| -rw-r--r-- | drivers/gpu/drm/nouveau/nouveau_abi16.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_abi16.c b/drivers/gpu/drm/nouveau/nouveau_abi16.c index 41241922263f..3b6dc883e150 100644 --- a/drivers/gpu/drm/nouveau/nouveau_abi16.c +++ b/drivers/gpu/drm/nouveau/nouveau_abi16.c | |||
| @@ -116,6 +116,11 @@ nouveau_abi16_chan_fini(struct nouveau_abi16 *abi16, | |||
| 116 | { | 116 | { |
| 117 | struct nouveau_abi16_ntfy *ntfy, *temp; | 117 | struct nouveau_abi16_ntfy *ntfy, *temp; |
| 118 | 118 | ||
| 119 | /* wait for all activity to stop before releasing notify object, which | ||
| 120 | * may be still in use */ | ||
| 121 | if (chan->chan && chan->ntfy) | ||
| 122 | nouveau_channel_idle(chan->chan); | ||
| 123 | |||
| 119 | /* cleanup notifier state */ | 124 | /* cleanup notifier state */ |
| 120 | list_for_each_entry_safe(ntfy, temp, &chan->notifiers, head) { | 125 | list_for_each_entry_safe(ntfy, temp, &chan->notifiers, head) { |
| 121 | nouveau_abi16_ntfy_fini(chan, ntfy); | 126 | nouveau_abi16_ntfy_fini(chan, ntfy); |
