aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2013-01-29 21:32:22 +0000
committerGabor Juhos <juhosg@openwrt.org>2013-01-29 21:32:22 +0000
commit9fdab3e8ae6982b7f5702352291259ce1ebf55c2 (patch)
tree91549fd6309b9bb7f380a0d805b17d76a1fa4cad /target/linux/generic
parentd8181178822d1b782fcfd24d716cda14676a3e68 (diff)
downloadupstream-9fdab3e8ae6982b7f5702352291259ce1ebf55c2.tar.gz
upstream-9fdab3e8ae6982b7f5702352291259ce1ebf55c2.tar.bz2
upstream-9fdab3e8ae6982b7f5702352291259ce1ebf55c2.zip
generic: fix default compression selection in ubifs
Signed-off-by: Gabor Juhos <juhosg@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35398 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/generic')
-rw-r--r--target/linux/generic/patches-3.7/551-ubifs-fix-default-compression-selection.patch29
-rw-r--r--target/linux/generic/patches-3.8/551-ubifs-fix-default-compression-selection.patch29
2 files changed, 58 insertions, 0 deletions
diff --git a/target/linux/generic/patches-3.7/551-ubifs-fix-default-compression-selection.patch b/target/linux/generic/patches-3.7/551-ubifs-fix-default-compression-selection.patch
new file mode 100644
index 0000000000..1b0f30718c
--- /dev/null
+++ b/target/linux/generic/patches-3.7/551-ubifs-fix-default-compression-selection.patch
@@ -0,0 +1,29 @@
+--- a/fs/ubifs/sb.c
++++ b/fs/ubifs/sb.c
+@@ -63,6 +63,17 @@
+ /* Default time granularity in nanoseconds */
+ #define DEFAULT_TIME_GRAN 1000000000
+
++static int get_default_compressor(void)
++{
++ if (ubifs_compr_present(UBIFS_COMPR_LZO))
++ return UBIFS_COMPR_LZO;
++
++ if (ubifs_compr_present(UBIFS_COMPR_ZLIB))
++ return UBIFS_COMPR_ZLIB;
++
++ return UBIFS_COMPR_NONE;
++}
++
+ /**
+ * create_default_filesystem - format empty UBI volume.
+ * @c: UBIFS file-system description object
+@@ -183,7 +194,7 @@ static int create_default_filesystem(str
+ if (c->mount_opts.override_compr)
+ sup->default_compr = cpu_to_le16(c->mount_opts.compr_type);
+ else
+- sup->default_compr = cpu_to_le16(UBIFS_COMPR_LZO);
++ sup->default_compr = cpu_to_le16(get_default_compressor());
+
+ generate_random_uuid(sup->uuid);
+
diff --git a/target/linux/generic/patches-3.8/551-ubifs-fix-default-compression-selection.patch b/target/linux/generic/patches-3.8/551-ubifs-fix-default-compression-selection.patch
new file mode 100644
index 0000000000..1b0f30718c
--- /dev/null
+++ b/target/linux/generic/patches-3.8/551-ubifs-fix-default-compression-selection.patch
@@ -0,0 +1,29 @@
+--- a/fs/ubifs/sb.c
++++ b/fs/ubifs/sb.c
+@@ -63,6 +63,17 @@
+ /* Default time granularity in nanoseconds */
+ #define DEFAULT_TIME_GRAN 1000000000
+
++static int get_default_compressor(void)
++{
++ if (ubifs_compr_present(UBIFS_COMPR_LZO))
++ return UBIFS_COMPR_LZO;
++
++ if (ubifs_compr_present(UBIFS_COMPR_ZLIB))
++ return UBIFS_COMPR_ZLIB;
++
++ return UBIFS_COMPR_NONE;
++}
++
+ /**
+ * create_default_filesystem - format empty UBI volume.
+ * @c: UBIFS file-system description object
+@@ -183,7 +194,7 @@ static int create_default_filesystem(str
+ if (c->mount_opts.override_compr)
+ sup->default_compr = cpu_to_le16(c->mount_opts.compr_type);
+ else
+- sup->default_compr = cpu_to_le16(UBIFS_COMPR_LZO);
++ sup->default_compr = cpu_to_le16(get_default_compressor());
+
+ generate_random_uuid(sup->uuid);
+