mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-11-03 22:44:27 -05:00 
			
		
		
		
	This just copies the files from the kernel 4.14 specific folders into the kernel 4.19 specific folder, no changes are done to the files in this commit. Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
		
			
				
	
	
		
			64 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			64 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
From 93c33e6a7f3b0aef99d02252e6232a3d8b80f2d5 Mon Sep 17 00:00:00 2001
 | 
						|
From: Hauke Mehrtens <hauke@hauke-m.de>
 | 
						|
Date: Sun, 21 Jan 2018 15:47:50 +0100
 | 
						|
Subject: ubifs: Add option to create UBI FS version 4 on empty UBI volume
 | 
						|
 | 
						|
Instead of creating an ubifs file system with format version 5 by
 | 
						|
default on empty UBI volumes add a compile option to create an older ubi
 | 
						|
with file system format version 4 instated. This allows it to be mount
 | 
						|
as a volume on kernel versions < 4.10, which does not support format
 | 
						|
version 5.
 | 
						|
We saw that some people can not access their older data when they
 | 
						|
downgraded from kernel 4.14 to kernel 4.9 to prevent this this option
 | 
						|
would help.
 | 
						|
 | 
						|
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
 | 
						|
---
 | 
						|
 fs/ubifs/Kconfig | 13 +++++++++++++
 | 
						|
 fs/ubifs/sb.c    |  6 ++++++
 | 
						|
 2 files changed, 19 insertions(+)
 | 
						|
 | 
						|
--- a/fs/ubifs/Kconfig
 | 
						|
+++ b/fs/ubifs/Kconfig
 | 
						|
@@ -74,3 +74,16 @@ config UBIFS_FS_SECURITY
 | 
						|
 	  the extended attribute support in advance.
 | 
						|
 
 | 
						|
 	  If you are not using a security module, say N.
 | 
						|
+
 | 
						|
+config UBIFS_FS_FORMAT4
 | 
						|
+	bool "Use file system format version 4 for new file systems"
 | 
						|
+	depends on UBIFS_FS
 | 
						|
+	help
 | 
						|
+	  Instead of creating new file systems with the new ubifs file
 | 
						|
+	  system version 5, use the old format version 4 for implicitly
 | 
						|
+	  by the driver created file systems on an empty UBI volume. This
 | 
						|
+	  makes it possible to  mount these file systems also with kernel
 | 
						|
+	  versions before 4.10. The driver will still support file system
 | 
						|
+	  format version 5 for ubifs file systems created with version 5.
 | 
						|
+
 | 
						|
+	  If you are unsure, say N.
 | 
						|
--- a/fs/ubifs/sb.c
 | 
						|
+++ b/fs/ubifs/sb.c
 | 
						|
@@ -176,7 +176,9 @@ static int create_default_filesystem(str
 | 
						|
 	tmp64 = (long long)max_buds * c->leb_size;
 | 
						|
 	if (big_lpt)
 | 
						|
 		sup_flags |= UBIFS_FLG_BIGLPT;
 | 
						|
+#ifndef CONFIG_UBIFS_FS_FORMAT4
 | 
						|
 	sup_flags |= UBIFS_FLG_DOUBLE_HASH;
 | 
						|
+#endif
 | 
						|
 
 | 
						|
 	sup->ch.node_type  = UBIFS_SB_NODE;
 | 
						|
 	sup->key_hash      = UBIFS_KEY_HASH_R5;
 | 
						|
@@ -192,7 +194,11 @@ static int create_default_filesystem(str
 | 
						|
 	sup->jhead_cnt     = cpu_to_le32(DEFAULT_JHEADS_CNT);
 | 
						|
 	sup->fanout        = cpu_to_le32(DEFAULT_FANOUT);
 | 
						|
 	sup->lsave_cnt     = cpu_to_le32(c->lsave_cnt);
 | 
						|
+#ifdef CONFIG_UBIFS_FS_FORMAT4
 | 
						|
+	sup->fmt_version   = cpu_to_le32(4);
 | 
						|
+#else
 | 
						|
 	sup->fmt_version   = cpu_to_le32(UBIFS_FORMAT_VERSION);
 | 
						|
+#endif
 | 
						|
 	sup->time_gran     = cpu_to_le32(DEFAULT_TIME_GRAN);
 | 
						|
 	if (c->mount_opts.override_compr)
 | 
						|
 		sup->default_compr = cpu_to_le16(c->mount_opts.compr_type);
 |