|
@@ -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 */
|