f2fs: support norecovery mount option
This patch adds a mount option, norecovery, which is mostly same as disable_roll_forward. The only difference is that norecovery should be activated with read-only mount option. This can be used when user wants to check whether f2fs is mountable or not without any recovery process. (e.g., xfstests/200) Reviewed-by: Chao Yu <chao2.yu@samsung.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
		
							parent
							
								
									dabc4a5c60
								
							
						
					
					
						commit
						2d834bf9ac
					
				| @ -106,6 +106,8 @@ background_gc=%s       Turn on/off cleaning operations, namely garbage | ||||
|                        Default value for this option is on. So garbage | ||||
|                        collection is on by default. | ||||
| disable_roll_forward   Disable the roll-forward recovery routine | ||||
| norecovery             Disable the roll-forward recovery routine, mounted read- | ||||
|                        only (i.e., -o ro,disable_roll_forward) | ||||
| discard                Issue discard/TRIM commands when a segment is cleaned. | ||||
| no_heap                Disable heap-style segment allocation which finds free | ||||
|                        segments for data from the beginning of main area, while | ||||
|  | ||||
| @ -42,6 +42,7 @@ static struct kset *f2fs_kset; | ||||
| enum { | ||||
| 	Opt_gc_background, | ||||
| 	Opt_disable_roll_forward, | ||||
| 	Opt_norecovery, | ||||
| 	Opt_discard, | ||||
| 	Opt_noheap, | ||||
| 	Opt_user_xattr, | ||||
| @ -62,6 +63,7 @@ enum { | ||||
| static match_table_t f2fs_tokens = { | ||||
| 	{Opt_gc_background, "background_gc=%s"}, | ||||
| 	{Opt_disable_roll_forward, "disable_roll_forward"}, | ||||
| 	{Opt_norecovery, "norecovery"}, | ||||
| 	{Opt_discard, "discard"}, | ||||
| 	{Opt_noheap, "no_heap"}, | ||||
| 	{Opt_user_xattr, "user_xattr"}, | ||||
| @ -287,6 +289,12 @@ static int parse_options(struct super_block *sb, char *options) | ||||
| 		case Opt_disable_roll_forward: | ||||
| 			set_opt(sbi, DISABLE_ROLL_FORWARD); | ||||
| 			break; | ||||
| 		case Opt_norecovery: | ||||
| 			/* this option mounts f2fs with ro */ | ||||
| 			set_opt(sbi, DISABLE_ROLL_FORWARD); | ||||
| 			if (!f2fs_readonly(sb)) | ||||
| 				return -EINVAL; | ||||
| 			break; | ||||
| 		case Opt_discard: | ||||
| 			set_opt(sbi, DISCARD); | ||||
| 			break; | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user