提交 1139ffb9 编写于 作者: B Ben Skeggs

drm/nouveau: call drm_vblank_cleanup() earlier

Fixes a NULL-ptr deref seen on module unload sometimes.
Signed-off-by: NBen Skeggs <bskeggs@redhat.com>
上级 2332b311
...@@ -74,14 +74,14 @@ nouveau_display_vblank_fini(struct drm_device *dev) ...@@ -74,14 +74,14 @@ nouveau_display_vblank_fini(struct drm_device *dev)
struct nouveau_display *disp = nouveau_display(dev); struct nouveau_display *disp = nouveau_display(dev);
int i; int i;
drm_vblank_cleanup(dev);
if (disp->vblank) { if (disp->vblank) {
for (i = 0; i < dev->mode_config.num_crtc; i++) for (i = 0; i < dev->mode_config.num_crtc; i++)
nouveau_event_ref(NULL, &disp->vblank[i]); nouveau_event_ref(NULL, &disp->vblank[i]);
kfree(disp->vblank); kfree(disp->vblank);
disp->vblank = NULL; disp->vblank = NULL;
} }
drm_vblank_cleanup(dev);
} }
static int static int
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册