arch/tile: correct a bug in freeing bootmem by VA for the optional second initrd.
authorChris Metcalf <cmetcalf@tilera.com>
Fri, 13 Aug 2010 12:23:07 +0000 (08:23 -0400)
committerChris Metcalf <cmetcalf@tilera.com>
Fri, 13 Aug 2010 12:23:07 +0000 (08:23 -0400)
Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
arch/tile/kernel/setup.c

index 4dd21c1e6d5e620f4826adf056f30c8c44558f59..e7d54c73d5c125e3ccc220b8552e4c012a8aeae3 100644 (file)
@@ -953,7 +953,7 @@ static void __init load_hv_initrd(void)
        if (rc != stat.size) {
                pr_err("Error reading %d bytes from hvfs file '%s': %d\n",
                       stat.size, initramfs_file, rc);
-               free_bootmem((unsigned long) initrd, stat.size);
+               free_initrd_mem((unsigned long) initrd, stat.size);
                return;
        }
        initrd_start = (unsigned long) initrd;
@@ -962,7 +962,7 @@ static void __init load_hv_initrd(void)
 
 void __init free_initrd_mem(unsigned long begin, unsigned long end)
 {
-       free_bootmem(begin, end - begin);
+       free_bootmem(__pa(begin), end - begin);
 }
 
 static void __init validate_hv(void)