Skip to content

Commit

Permalink
Staging: ipack/bridges/tpci200: tpci200_slot_unmap_space() should ret…
Browse files Browse the repository at this point in the history
…urn 0 if succeed.

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>
  • Loading branch information
Samuel Iglesias Gonsalvez authored and Greg Kroah-Hartman committed Jun 7, 2012
1 parent be98cc1 commit 38f1c53
Showing 1 changed file with 7 additions and 14 deletions.
21 changes: 7 additions & 14 deletions drivers/staging/ipack/bridges/tpci200.c
Original file line number Diff line number Diff line change
Expand Up @@ -551,20 +551,15 @@ static int tpci200_free_irq(struct ipack_device *dev)

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:
Expand Down Expand Up @@ -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);
Expand All @@ -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)
Expand Down

0 comments on commit 38f1c53

Please sign in to comment.