Staging: ipack/bridges/tpci200: tpci200_slot_unmap_space() should return 0 if succeed.
authorSamuel Iglesias Gonsalvez <siglesias@igalia.com>
Wed, 23 May 2012 13:54:42 +0000 (15:54 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 7 Jun 2012 05:14:07 +0000 (14:14 +0900)
tpci200_slot_unmap_space() should return 0 if the operation was properly done. If
not, the caller will think that something wrong happened.

Signed-off-by: Samuel Iglesias Gonsalvez <siglesias@igalia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/ipack/bridges/tpci200.c

index 75ed600..85560c7 100644 (file)
@@ -551,20 +551,15 @@ out:
 
 static int tpci200_slot_unmap_space(struct ipack_device *dev, int space)
 {
-       int res;
        struct ipack_addr_space *virt_addr_space;
        struct tpci200_board *tpci200;
 
        tpci200 = check_slot(dev);
-       if (tpci200 == NULL) {
-               res = -EINVAL;
-               goto out;
-       }
+       if (tpci200 == NULL)
+               return -EINVAL;
 
-       if (mutex_lock_interruptible(&tpci200->mutex)) {
-               res = -ERESTARTSYS;
-               goto out;
-       }
+       if (mutex_lock_interruptible(&tpci200->mutex))
+               return -ERESTARTSYS;
 
        switch (space) {
        case IPACK_IO_SPACE:
@@ -594,9 +589,8 @@ static int tpci200_slot_unmap_space(struct ipack_device *dev, int space)
        default:
                pr_err("Slot [%d:%d] space number %d doesn't exist !\n",
                       dev->bus_nr, dev->slot, space);
-               res = -EINVAL;
-               goto out_unlock;
-               break;
+               mutex_unlock(&tpci200->mutex);
+               return -EINVAL;
        }
 
        iounmap(virt_addr_space->address);
@@ -605,8 +599,7 @@ static int tpci200_slot_unmap_space(struct ipack_device *dev, int space)
        virt_addr_space->size = 0;
 out_unlock:
        mutex_unlock(&tpci200->mutex);
-out:
-       return res;
+       return 0;
 }
 
 static int tpci200_slot_unregister(struct ipack_device *dev)