UBIFS: fix debugfs-less systems support
Commit "f70b7e5 UBIFS: remove Kconfig debugging option" broke UBIFS and it
refuses to initialize if debugfs (CONFIG_DEBUG_FS) is disabled. I incorrectly
assumed that debugfs files creation function will return success if debugfs
is disabled, but they actually return -ENODEV. This patch fixes the issue.
Reported-by: Paul Parsons <lost.distance@yahoo.com>
Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Tested-by: Paul Parsons <lost.distance@yahoo.com>
	
	
This commit is contained in:
		
					parent
					
						
							
								e9b4cf2094
							
						
					
				
			
			
				commit
				
					
						818039c7d5
					
				
			
		
					 1 changed files with 10 additions and 2 deletions
				
			
		|  | @ -2918,6 +2918,9 @@ int dbg_debugfs_init_fs(struct ubifs_info *c) | |||
| 	struct dentry *dent; | ||||
| 	struct ubifs_debug_info *d = c->dbg; | ||||
| 
 | ||||
| 	if (!IS_ENABLED(DEBUG_FS)) | ||||
| 		return 0; | ||||
| 
 | ||||
| 	n = snprintf(d->dfs_dir_name, UBIFS_DFS_DIR_LEN + 1, UBIFS_DFS_DIR_NAME, | ||||
| 		     c->vi.ubi_num, c->vi.vol_id); | ||||
| 	if (n == UBIFS_DFS_DIR_LEN) { | ||||
|  | @ -3010,7 +3013,8 @@ out: | |||
|  */ | ||||
| void dbg_debugfs_exit_fs(struct ubifs_info *c) | ||||
| { | ||||
| 	debugfs_remove_recursive(c->dbg->dfs_dir); | ||||
| 	if (IS_ENABLED(DEBUG_FS)) | ||||
| 		debugfs_remove_recursive(c->dbg->dfs_dir); | ||||
| } | ||||
| 
 | ||||
| struct ubifs_global_debug_info ubifs_dbg; | ||||
|  | @ -3095,6 +3099,9 @@ int dbg_debugfs_init(void) | |||
| 	const char *fname; | ||||
| 	struct dentry *dent; | ||||
| 
 | ||||
| 	if (!IS_ENABLED(DEBUG_FS)) | ||||
| 		return 0; | ||||
| 
 | ||||
| 	fname = "ubifs"; | ||||
| 	dent = debugfs_create_dir(fname, NULL); | ||||
| 	if (IS_ERR_OR_NULL(dent)) | ||||
|  | @ -3159,7 +3166,8 @@ out: | |||
|  */ | ||||
| void dbg_debugfs_exit(void) | ||||
| { | ||||
| 	debugfs_remove_recursive(dfs_rootdir); | ||||
| 	if (IS_ENABLED(DEBUG_FS)) | ||||
| 		debugfs_remove_recursive(dfs_rootdir); | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Artem Bityutskiy
				Artem Bityutskiy