diff options
author | Andy Lutomirski <luto@mit.edu> | 2010-11-17 02:40:52 +0300 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2010-11-18 07:39:07 +0300 |
commit | ab838338a2a9e0cb8346eb0cab9977be13e8dce5 (patch) | |
tree | cf8d058f811fe2b037db5d27f8c21277415efeeb /drivers/gpu/drm/nouveau/nouveau_irq.c | |
parent | c1b60ece91460214b5135360a375f3f6fbb59608 (diff) | |
download | linux-ab838338a2a9e0cb8346eb0cab9977be13e8dce5.tar.xz |
nouveau: Acknowledge HPD irq in handler, not bottom half
The old code generated an interrupt storm bad enough to completely
take down my system.
Signed-off-by: Andy Lutomirski <luto@mit.edu>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/nouveau/nouveau_irq.c')
-rw-r--r-- | drivers/gpu/drm/nouveau/nouveau_irq.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_irq.c b/drivers/gpu/drm/nouveau/nouveau_irq.c index e2f2d59be3ea..7bfd9e6c9d67 100644 --- a/drivers/gpu/drm/nouveau/nouveau_irq.c +++ b/drivers/gpu/drm/nouveau/nouveau_irq.c @@ -60,6 +60,7 @@ nouveau_irq_preinstall(struct drm_device *dev) if (dev_priv->card_type >= NV_50) { INIT_WORK(&dev_priv->irq_work, nv50_display_irq_handler_bh); INIT_WORK(&dev_priv->hpd_work, nv50_display_irq_hotplug_bh); + spin_lock_init(&dev_priv->hpd_state.lock); INIT_LIST_HEAD(&dev_priv->vbl_waiting); } } |