Fix an incorrect type, and a missing return value check,
authorkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Tue, 24 Jan 2006 17:08:11 +0000 (18:08 +0100)
committerkaf24@firebug.cl.cam.ac.uk <kaf24@firebug.cl.cam.ac.uk>
Tue, 24 Jan 2006 17:08:11 +0000 (18:08 +0100)
in direct_remap_pfn_range().

Signed-off-by: Jan Beulich <JBeulich@novell.com>
linux-2.6-xen-sparse/arch/xen/i386/mm/ioremap.c

index 9bab1b6ebea7af5b471817020cd1ad908555b2b9..dc29e0a2b7c20990f280c82e74eb75b9293ef1df 100644 (file)
@@ -52,8 +52,8 @@ static int __direct_remap_pfn_range(struct mm_struct *mm,
                                    pgprot_t prot,
                                    domid_t  domid)
 {
-       int i, rc;
-       unsigned long start_address;
+       int rc;
+       unsigned long i, start_address;
        mmu_update_t *u, *v, *w;
 
        u = v = w = (mmu_update_t *)__get_free_page(GFP_KERNEL|__GFP_REPEAT);
@@ -93,8 +93,10 @@ static int __direct_remap_pfn_range(struct mm_struct *mm,
 
        if (v != u) {
                /* get the ptep's filled in */
-               generic_page_range(mm, start_address, address - start_address,
+               rc = generic_page_range(mm, start_address, address - start_address,
                                   direct_remap_area_pte_fn, &w);
+               if (rc)
+                       goto out;
                rc = -EFAULT;
                if (unlikely(HYPERVISOR_mmu_update(u, v - u, NULL, domid) < 0))
                        goto out;