patch-2.4.0-test2 linux/drivers/char/drm/fops.c

Next file: linux/drivers/char/drm/init.c
Previous file: linux/drivers/char/drm/ffb_drv.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.0-test1/linux/drivers/char/drm/fops.c linux/drivers/char/drm/fops.c
@@ -92,7 +92,8 @@
 	DRM_DEBUG("pid = %d, device = 0x%x, open_count = %d\n",
 		  current->pid, dev->device, dev->open_count);
 
-	if (_DRM_LOCK_IS_HELD(dev->lock.hw_lock->lock)
+	if (dev->lock.hw_lock != NULL
+	    && _DRM_LOCK_IS_HELD(dev->lock.hw_lock->lock)
 	    && dev->lock.pid == current->pid) {
 		DRM_ERROR("Process %d dead, freeing lock for context %d\n",
 			  current->pid,
@@ -216,7 +217,7 @@
 	if (dev->buf_async) kill_fasync(dev->buf_async, SIGIO);
 #else
 				/* Parameter added in 2.3.21 */
-	if (dev->buf_async) kill_fasync(dev->buf_async, SIGIO, POLL_IN);
+	kill_fasync(&dev->buf_async, SIGIO, POLL_IN);
 #endif
 	DRM_DEBUG("waking\n");
 	wake_up_interruptible(&dev->buf_readers);

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)