summaryrefslogtreecommitdiff
path: root/kernel/fail_function.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/fail_function.c')
-rw-r--r--kernel/fail_function.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/kernel/fail_function.c b/kernel/fail_function.c
index 03643e33e4c3..893e8f9a9118 100644
--- a/kernel/fail_function.c
+++ b/kernel/fail_function.c
@@ -294,14 +294,13 @@ static ssize_t fei_write(struct file *file, const char __user *buffer,
}
ret = register_kprobe(&attr->kp);
- if (!ret)
- fei_debugfs_add_attr(attr);
- if (ret < 0)
+ if (ret) {
fei_attr_remove(attr);
- else {
- list_add_tail(&attr->list, &fei_attr_list);
- ret = count;
+ goto out;
}
+ fei_debugfs_add_attr(attr);
+ list_add_tail(&attr->list, &fei_attr_list);
+ ret = count;
out:
mutex_unlock(&fei_lock);
kfree(buf);