diff options
Diffstat (limited to 'lib/fault-inject.c')
| -rw-r--r-- | lib/fault-inject.c | 20 | 
1 files changed, 7 insertions, 13 deletions
diff --git a/lib/fault-inject.c b/lib/fault-inject.c index 2577b121c7c..f193b779644 100644 --- a/lib/fault-inject.c +++ b/lib/fault-inject.c @@ -197,21 +197,15 @@ static struct dentry *debugfs_create_atomic_t(const char *name, mode_t mode,  	return debugfs_create_file(name, mode, parent, value, &fops_atomic_t);  } -void cleanup_fault_attr_dentries(struct fault_attr *attr) -{ -	debugfs_remove_recursive(attr->dir); -} - -int init_fault_attr_dentries(struct fault_attr *attr, const char *name) +struct dentry *fault_create_debugfs_attr(const char *name, +			struct dentry *parent, struct fault_attr *attr)  {  	mode_t mode = S_IFREG | S_IRUSR | S_IWUSR;  	struct dentry *dir; -	dir = debugfs_create_dir(name, NULL); +	dir = debugfs_create_dir(name, parent);  	if (!dir) -		return -ENOMEM; - -	attr->dir = dir; +		return ERR_PTR(-ENOMEM);  	if (!debugfs_create_ul("probability", mode, dir, &attr->probability))  		goto fail; @@ -243,11 +237,11 @@ int init_fault_attr_dentries(struct fault_attr *attr, const char *name)  #endif /* CONFIG_FAULT_INJECTION_STACKTRACE_FILTER */ -	return 0; +	return dir;  fail: -	debugfs_remove_recursive(attr->dir); +	debugfs_remove_recursive(dir); -	return -ENOMEM; +	return ERR_PTR(-ENOMEM);  }  #endif /* CONFIG_FAULT_INJECTION_DEBUG_FS */  |