summary refs log tree commit diff
path: root/kernel/trace/trace.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2019-11-18 09:43:10 -0500
committerAl Viro <viro@zeniv.linux.org.uk>2019-12-10 22:29:58 -0500
commita3d1e7eb5abe3aa1095bc75d1a6760d3809bd672 (patch)
tree1dce9bdc1052f0a94dffe67526e38f5a8202164f /kernel/trace/trace.c
parente42617b825f8073569da76dc4510bfa019b1c35a (diff)
downloadlinux-a3d1e7eb5abe3aa1095bc75d1a6760d3809bd672.tar.gz
simple_recursive_removal(): kernel-side rm -rf for ramfs-style filesystems
two requirements: no file creations in IS_DEADDIR and no cross-directory
renames whatsoever.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'kernel/trace/trace.c')
-rw-r--r--kernel/trace/trace.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index 23459d53d576..84a004638157 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -8496,7 +8496,7 @@ static struct trace_array *trace_array_create(const char *name)
 
 	ret = event_trace_add_tracer(tr->dir, tr);
 	if (ret) {
-		tracefs_remove_recursive(tr->dir);
+		tracefs_remove(tr->dir);
 		goto out_free_tr;
 	}
 
@@ -8605,7 +8605,7 @@ static int __remove_instance(struct trace_array *tr)
 	event_trace_del_tracer(tr);
 	ftrace_clear_pids(tr);
 	ftrace_destroy_function_files(tr);
-	tracefs_remove_recursive(tr->dir);
+	tracefs_remove(tr->dir);
 	free_trace_buffers(tr);
 
 	for (i = 0; i < tr->nr_topts; i++) {