diff options
author | Michal Marek <mmarek@suse.cz> | 2014-01-02 14:02:06 +0100 |
---|---|---|
committer | Michal Marek <mmarek@suse.cz> | 2014-01-02 14:02:06 +0100 |
commit | 37e2c2a775fc887acd1432908478dfd532f7f00f (patch) | |
tree | e51ebc699d8e262fd47e0913be6a711cb1a7b565 /init/do_mounts_rd.c | |
parent | deb-pkg: Inhibit initramfs builders if CONFIG_BLK_DEV_INITRD is not set (diff) | |
parent | Linux 3.13-rc1 (diff) | |
download | linux-37e2c2a775fc887acd1432908478dfd532f7f00f.tar.xz linux-37e2c2a775fc887acd1432908478dfd532f7f00f.zip |
Merge commit v3.13-rc1 into kbuild/misc
Diffstat (limited to 'init/do_mounts_rd.c')
-rw-r--r-- | init/do_mounts_rd.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/init/do_mounts_rd.c b/init/do_mounts_rd.c index 6be2879cca66..7c098ac9068a 100644 --- a/init/do_mounts_rd.c +++ b/init/do_mounts_rd.c @@ -57,6 +57,11 @@ static int __init crd_load(int in_fd, int out_fd, decompress_fn deco); * cramfs * squashfs * gzip + * bzip2 + * lzma + * xz + * lzo + * lz4 */ static int __init identify_ramdisk_image(int fd, int start_block, decompress_fn *decompressor) @@ -342,6 +347,13 @@ static int __init crd_load(int in_fd, int out_fd, decompress_fn deco) int result; crd_infd = in_fd; crd_outfd = out_fd; + + if (!deco) { + pr_emerg("Invalid ramdisk decompression routine. " + "Select appropriate config option.\n"); + panic("Could not decompress initial ramdisk image."); + } + result = deco(NULL, 0, compr_fill, compr_flush, NULL, NULL, error); if (decompress_error) result = 1; |