diff options
author | Thomas Hellstrom <thellstrom-at-vmware-dot-com> | 2009-02-05 13:59:48 +0100 |
---|---|---|
committer | Thomas Hellstrom <thellstrom-at-vmware-dot-com> | 2009-02-05 13:59:48 +0100 |
commit | 869f60aa6232f651849dbed94310c05a7e4fec8f (patch) | |
tree | 7b3bd38c6782f1e265d2595219a9c95a68869c56 | |
parent | ddadcb67da045ba6bdefd0be59f7ecc4ca61f2a9 (diff) |
drm core: Wake up _all_ lock waiters when the master is gone.
-rw-r--r-- | linux-core/drm_bufs.c | 2 | ||||
-rw-r--r-- | linux-core/drm_stub.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/linux-core/drm_bufs.c b/linux-core/drm_bufs.c index 1016ef71..15171089 100644 --- a/linux-core/drm_bufs.c +++ b/linux-core/drm_bufs.c @@ -420,7 +420,7 @@ int drm_rmmap_locked(struct drm_device *dev, drm_local_map_t *map) dev->sigdata.lock = NULL; master->lock.hw_lock = NULL; /* SHM removed */ master->lock.file_priv = NULL; - wake_up_interruptible(&master->lock.lock_queue); + wake_up_interruptible_all(&master->lock.lock_queue); } break; case _DRM_AGP: diff --git a/linux-core/drm_stub.c b/linux-core/drm_stub.c index 5a63e827..42bb1944 100644 --- a/linux-core/drm_stub.c +++ b/linux-core/drm_stub.c @@ -144,7 +144,7 @@ static void drm_master_destroy(struct kref *kref) dev->sigdata.lock = NULL; master->lock.hw_lock = NULL; /* SHM removed */ master->lock.file_priv = NULL; - wake_up_interruptible(&master->lock.lock_queue); + wake_up_interruptible_all(&master->lock.lock_queue); } drm_free(master, sizeof(*master), DRM_MEM_DRIVER); |