diff options
author | Jonathan Corbet <corbet@lwn.net> | 2008-07-14 17:29:34 -0400 |
---|---|---|
committer | Jonathan Corbet <corbet@lwn.net> | 2008-07-14 17:29:34 -0400 |
commit | 2fceef397f9880b212a74c418290ce69e7ac00eb (patch) | |
tree | d9cc09ab992825ef7fede4a688103503e3caf655 /drivers/char/drm/drm_fops.c | |
parent | feae1ef116ed381625d3731c5ae4f4ebcb3fa302 (diff) | |
parent | bce7f793daec3e65ec5c5705d2457b81fe7b5725 (diff) |
Merge commit 'v2.6.26' into bkl-removal
Diffstat (limited to 'drivers/char/drm/drm_fops.c')
-rw-r--r-- | drivers/char/drm/drm_fops.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/drivers/char/drm/drm_fops.c b/drivers/char/drm/drm_fops.c index 7a25726f07f..851a53f1acc 100644 --- a/drivers/char/drm/drm_fops.c +++ b/drivers/char/drm/drm_fops.c | |||
@@ -328,7 +328,6 @@ int drm_release(struct inode *inode, struct file *filp) | |||
328 | struct drm_file *file_priv = filp->private_data; | 328 | struct drm_file *file_priv = filp->private_data; |
329 | struct drm_device *dev = file_priv->minor->dev; | 329 | struct drm_device *dev = file_priv->minor->dev; |
330 | int retcode = 0; | 330 | int retcode = 0; |
331 | unsigned long irqflags; | ||
332 | 331 | ||
333 | lock_kernel(); | 332 | lock_kernel(); |
334 | 333 | ||
@@ -360,11 +359,9 @@ int drm_release(struct inode *inode, struct file *filp) | |||
360 | */ | 359 | */ |
361 | 360 | ||
362 | do{ | 361 | do{ |
363 | spin_lock_irqsave(&dev->lock.spinlock, | 362 | spin_lock_bh(&dev->lock.spinlock); |
364 | irqflags); | ||
365 | locked = dev->lock.idle_has_lock; | 363 | locked = dev->lock.idle_has_lock; |
366 | spin_unlock_irqrestore(&dev->lock.spinlock, | 364 | spin_unlock_bh(&dev->lock.spinlock); |
367 | irqflags); | ||
368 | if (locked) | 365 | if (locked) |
369 | break; | 366 | break; |
370 | schedule(); | 367 | schedule(); |