diff options
Diffstat (limited to 'init/initramfs.c')
| -rw-r--r-- | init/initramfs.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/init/initramfs.c b/init/initramfs.c index 7cea802d00ef..fca899622937 100644 --- a/init/initramfs.c +++ b/init/initramfs.c | |||
| @@ -550,6 +550,7 @@ skip: | |||
| 550 | initrd_end = 0; | 550 | initrd_end = 0; |
| 551 | } | 551 | } |
| 552 | 552 | ||
| 553 | #ifdef CONFIG_BLK_DEV_RAM | ||
| 553 | #define BUF_SIZE 1024 | 554 | #define BUF_SIZE 1024 |
| 554 | static void __init clean_rootfs(void) | 555 | static void __init clean_rootfs(void) |
| 555 | { | 556 | { |
| @@ -596,6 +597,7 @@ static void __init clean_rootfs(void) | |||
| 596 | ksys_close(fd); | 597 | ksys_close(fd); |
| 597 | kfree(buf); | 598 | kfree(buf); |
| 598 | } | 599 | } |
| 600 | #endif | ||
| 599 | 601 | ||
| 600 | static int __init populate_rootfs(void) | 602 | static int __init populate_rootfs(void) |
| 601 | { | 603 | { |
| @@ -638,10 +640,8 @@ static int __init populate_rootfs(void) | |||
| 638 | printk(KERN_INFO "Unpacking initramfs...\n"); | 640 | printk(KERN_INFO "Unpacking initramfs...\n"); |
| 639 | err = unpack_to_rootfs((char *)initrd_start, | 641 | err = unpack_to_rootfs((char *)initrd_start, |
| 640 | initrd_end - initrd_start); | 642 | initrd_end - initrd_start); |
| 641 | if (err) { | 643 | if (err) |
| 642 | printk(KERN_EMERG "Initramfs unpacking failed: %s\n", err); | 644 | printk(KERN_EMERG "Initramfs unpacking failed: %s\n", err); |
| 643 | clean_rootfs(); | ||
| 644 | } | ||
| 645 | free_initrd(); | 645 | free_initrd(); |
| 646 | #endif | 646 | #endif |
| 647 | } | 647 | } |
