summary refs log tree commit diff
path: root/drivers/xen/swiotlb-xen.c
diff options
context:
space:
mode:
authorKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>2012-09-17 10:20:09 -0400
committerKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>2012-09-17 13:00:41 -0400
commitc468bdee28a1cb61d9b7a8ce9859d17dee43b7d7 (patch)
tree92402ff7a4338dbf7227f8f50c9898c30416e62a /drivers/xen/swiotlb-xen.c
parentb82776005369899c1c7ca2e4b2414bb64b538d2c (diff)
downloadlinux-c468bdee28a1cb61d9b7a8ce9859d17dee43b7d7.tar.gz
xen/swiotlb: For early initialization, return zero on success.
If everything is setup properly we would return -ENOMEM since
rc by default is set to that value. Lets not do that and return
a proper return code.

Note: The reason the early code needs this special treatment
is that it SWIOTLB library call does not return anything (and
had it failed it would call panic()) - but our function does.

Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Diffstat (limited to 'drivers/xen/swiotlb-xen.c')
-rw-r--r--drivers/xen/swiotlb-xen.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/xen/swiotlb-xen.c b/drivers/xen/swiotlb-xen.c
index 7461edb5118e..b70f2d19ab99 100644
--- a/drivers/xen/swiotlb-xen.c
+++ b/drivers/xen/swiotlb-xen.c
@@ -230,9 +230,10 @@ retry:
 		goto error;
 	}
 	start_dma_addr = xen_virt_to_bus(xen_io_tlb_start);
-	if (early)
+	if (early) {
 		swiotlb_init_with_tbl(xen_io_tlb_start, xen_io_tlb_nslabs, verbose);
-	else
+		rc = 0;
+	} else
 		rc = swiotlb_late_init_with_tbl(xen_io_tlb_start, xen_io_tlb_nslabs);
 	return rc;
 error: