vserver 1.9.5.x5
[linux-2.6.git] / drivers / char / drm / i830_irq.c
index 362d66e..0977445 100644 (file)
@@ -26,7 +26,6 @@
  *
  */
 
-#include "i830.h"
 #include "drmP.h"
 #include "drm.h"
 #include "i830_drm.h"
@@ -35,7 +34,7 @@
 #include <linux/delay.h>
 
 
-irqreturn_t DRM(irq_handler)( DRM_IRQ_ARGS )
+irqreturn_t i830_driver_irq_handler( DRM_IRQ_ARGS )
 {
        drm_device_t     *dev = (drm_device_t *)arg;
        drm_i830_private_t *dev_priv = (drm_i830_private_t *)dev->dev_private;
@@ -92,7 +91,7 @@ int i830_wait_irq(drm_device_t *dev, int irq_nr)
        add_wait_queue(&dev_priv->irq_queue, &entry);
 
        for (;;) {
-               current->state = TASK_INTERRUPTIBLE;
+               __set_current_state(TASK_INTERRUPTIBLE);
                if (atomic_read(&dev_priv->irq_received) >= irq_nr) 
                   break;
                if((signed)(end - jiffies) <= 0) {
@@ -112,7 +111,7 @@ int i830_wait_irq(drm_device_t *dev, int irq_nr)
                }
        }
 
-       current->state = TASK_RUNNING;
+       __set_current_state(TASK_RUNNING);
        remove_wait_queue(&dev_priv->irq_queue, &entry);
        return ret;
 }
@@ -129,10 +128,7 @@ int i830_irq_emit( struct inode *inode, struct file *filp, unsigned int cmd,
        drm_i830_irq_emit_t emit;
        int result;
 
-       if(!_DRM_LOCK_IS_HELD(dev->lock.hw_lock->lock)) {
-               DRM_ERROR("i830_irq_emit called without lock held\n");
-               return -EINVAL;
-       }
+       LOCK_TEST_WITH_RETURN(dev, filp);
 
        if ( !dev_priv ) {
                DRM_ERROR( "%s called with no initialization\n", __FUNCTION__ );
@@ -178,7 +174,7 @@ int i830_irq_wait( struct inode *inode, struct file *filp, unsigned int cmd,
 
 /* drm_dma.h hooks
 */
-void DRM(driver_irq_preinstall)( drm_device_t *dev ) {
+void i830_driver_irq_preinstall( drm_device_t *dev ) {
        drm_i830_private_t *dev_priv =
                (drm_i830_private_t *)dev->dev_private;
 
@@ -190,14 +186,14 @@ void DRM(driver_irq_preinstall)( drm_device_t *dev ) {
        init_waitqueue_head(&dev_priv->irq_queue);
 }
 
-void DRM(driver_irq_postinstall)( drm_device_t *dev ) {
+void i830_driver_irq_postinstall( drm_device_t *dev ) {
        drm_i830_private_t *dev_priv =
                (drm_i830_private_t *)dev->dev_private;
 
        I830_WRITE16( I830REG_INT_ENABLE_R, 0x2 );
 }
 
-void DRM(driver_irq_uninstall)( drm_device_t *dev ) {
+void i830_driver_irq_uninstall( drm_device_t *dev ) {
        drm_i830_private_t *dev_priv =
                (drm_i830_private_t *)dev->dev_private;
        if (!dev_priv)