Loading fs/squashfs/Kconfig +15 −0 Original line number Diff line number Diff line Loading @@ -53,6 +53,21 @@ config SQUASHFS_LZO If unsure, say N. config SQUASHFS_XZ bool "Include support for XZ compressed file systems" depends on SQUASHFS select XZ_DEC help Saying Y here includes support for reading Squashfs file systems compressed with XZ compresssion. XZ gives better compression than the default zlib compression, at the expense of greater CPU and memory overhead. XZ is not the standard compression used in Squashfs and so most file systems will be readable without selecting this option. If unsure, say N. config SQUASHFS_EMBEDDED bool "Additional option for memory-constrained systems" depends on SQUASHFS Loading fs/squashfs/Makefile +1 −0 Original line number Diff line number Diff line Loading @@ -7,3 +7,4 @@ squashfs-y += block.o cache.o dir.o export.o file.o fragment.o id.o inode.o squashfs-y += namei.o super.o symlink.o zlib_wrapper.o decompressor.o squashfs-$(CONFIG_SQUASHFS_XATTR) += xattr.o xattr_id.o squashfs-$(CONFIG_SQUASHFS_LZO) += lzo_wrapper.o squashfs-$(CONFIG_SQUASHFS_XZ) += xz_wrapper.o fs/squashfs/decompressor.c +7 −0 Original line number Diff line number Diff line Loading @@ -46,6 +46,12 @@ static const struct squashfs_decompressor squashfs_lzo_unsupported_comp_ops = { }; #endif #ifndef CONFIG_SQUASHFS_XZ static const struct squashfs_decompressor squashfs_xz_comp_ops = { NULL, NULL, NULL, XZ_COMPRESSION, "xz", 0 }; #endif static const struct squashfs_decompressor squashfs_unknown_comp_ops = { NULL, NULL, NULL, 0, "unknown", 0 }; Loading @@ -58,6 +64,7 @@ static const struct squashfs_decompressor *decompressor[] = { #else &squashfs_lzo_unsupported_comp_ops, #endif &squashfs_xz_comp_ops, &squashfs_unknown_comp_ops }; Loading fs/squashfs/decompressor.h +5 −0 Original line number Diff line number Diff line Loading @@ -52,4 +52,9 @@ static inline int squashfs_decompress(struct squashfs_sb_info *msblk, return msblk->decompressor->decompress(msblk, buffer, bh, b, offset, length, srclength, pages); } #ifdef CONFIG_SQUASHFS_XZ extern const struct squashfs_decompressor squashfs_xz_comp_ops; #endif #endif Loading
fs/squashfs/Kconfig +15 −0 Original line number Diff line number Diff line Loading @@ -53,6 +53,21 @@ config SQUASHFS_LZO If unsure, say N. config SQUASHFS_XZ bool "Include support for XZ compressed file systems" depends on SQUASHFS select XZ_DEC help Saying Y here includes support for reading Squashfs file systems compressed with XZ compresssion. XZ gives better compression than the default zlib compression, at the expense of greater CPU and memory overhead. XZ is not the standard compression used in Squashfs and so most file systems will be readable without selecting this option. If unsure, say N. config SQUASHFS_EMBEDDED bool "Additional option for memory-constrained systems" depends on SQUASHFS Loading
fs/squashfs/Makefile +1 −0 Original line number Diff line number Diff line Loading @@ -7,3 +7,4 @@ squashfs-y += block.o cache.o dir.o export.o file.o fragment.o id.o inode.o squashfs-y += namei.o super.o symlink.o zlib_wrapper.o decompressor.o squashfs-$(CONFIG_SQUASHFS_XATTR) += xattr.o xattr_id.o squashfs-$(CONFIG_SQUASHFS_LZO) += lzo_wrapper.o squashfs-$(CONFIG_SQUASHFS_XZ) += xz_wrapper.o
fs/squashfs/decompressor.c +7 −0 Original line number Diff line number Diff line Loading @@ -46,6 +46,12 @@ static const struct squashfs_decompressor squashfs_lzo_unsupported_comp_ops = { }; #endif #ifndef CONFIG_SQUASHFS_XZ static const struct squashfs_decompressor squashfs_xz_comp_ops = { NULL, NULL, NULL, XZ_COMPRESSION, "xz", 0 }; #endif static const struct squashfs_decompressor squashfs_unknown_comp_ops = { NULL, NULL, NULL, 0, "unknown", 0 }; Loading @@ -58,6 +64,7 @@ static const struct squashfs_decompressor *decompressor[] = { #else &squashfs_lzo_unsupported_comp_ops, #endif &squashfs_xz_comp_ops, &squashfs_unknown_comp_ops }; Loading
fs/squashfs/decompressor.h +5 −0 Original line number Diff line number Diff line Loading @@ -52,4 +52,9 @@ static inline int squashfs_decompress(struct squashfs_sb_info *msblk, return msblk->decompressor->decompress(msblk, buffer, bh, b, offset, length, srclength, pages); } #ifdef CONFIG_SQUASHFS_XZ extern const struct squashfs_decompressor squashfs_xz_comp_ops; #endif #endif