]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/blobdiff - kernel/trace/trace_events.c
tracing: Disable "other" permission bits in the tracefs files
[mirror_ubuntu-jammy-kernel.git] / kernel / trace / trace_events.c
index 830b3b9940f4c17c84d3a2531dcb8183de8331bd..bb1123ef2a021092ea48e39e5a090964adb0dceb 100644 (file)
@@ -2312,7 +2312,8 @@ event_subsystem_dir(struct trace_array *tr, const char *name,
        /* the ftrace system is special, do not create enable or filter files */
        if (strcmp(name, "ftrace") != 0) {
 
-               entry = tracefs_create_file("filter", 0644, dir->entry, dir,
+               entry = tracefs_create_file("filter", TRACE_MODE_WRITE,
+                                           dir->entry, dir,
                                            &ftrace_subsystem_filter_fops);
                if (!entry) {
                        kfree(system->filter);
@@ -2320,7 +2321,7 @@ event_subsystem_dir(struct trace_array *tr, const char *name,
                        pr_warn("Could not create tracefs '%s/filter' entry\n", name);
                }
 
-               trace_create_file("enable", 0644, dir->entry, dir,
+               trace_create_file("enable", TRACE_MODE_WRITE, dir->entry, dir,
                                  &ftrace_system_enable_fops);
        }
 
@@ -2402,12 +2403,12 @@ event_create_dir(struct dentry *parent, struct trace_event_file *file)
        }
 
        if (call->class->reg && !(call->flags & TRACE_EVENT_FL_IGNORE_ENABLE))
-               trace_create_file("enable", 0644, file->dir, file,
+               trace_create_file("enable", TRACE_MODE_WRITE, file->dir, file,
                                  &ftrace_enable_fops);
 
 #ifdef CONFIG_PERF_EVENTS
        if (call->event.type && call->class->reg)
-               trace_create_file("id", 0444, file->dir,
+               trace_create_file("id", TRACE_MODE_READ, file->dir,
                                  (void *)(long)call->event.type,
                                  &ftrace_event_id_fops);
 #endif
@@ -2423,22 +2424,22 @@ event_create_dir(struct dentry *parent, struct trace_event_file *file)
         * triggers or filters.
         */
        if (!(call->flags & TRACE_EVENT_FL_IGNORE_ENABLE)) {
-               trace_create_file("filter", 0644, file->dir, file,
-                                 &ftrace_event_filter_fops);
+               trace_create_file("filter", TRACE_MODE_WRITE, file->dir,
+                                 file, &ftrace_event_filter_fops);
 
-               trace_create_file("trigger", 0644, file->dir, file,
-                                 &event_trigger_fops);
+               trace_create_file("trigger", TRACE_MODE_WRITE, file->dir,
+                                 file, &event_trigger_fops);
        }
 
 #ifdef CONFIG_HIST_TRIGGERS
-       trace_create_file("hist", 0444, file->dir, file,
+       trace_create_file("hist", TRACE_MODE_READ, file->dir, file,
                          &event_hist_fops);
 #endif
 #ifdef CONFIG_HIST_TRIGGERS_DEBUG
-       trace_create_file("hist_debug", 0444, file->dir, file,
+       trace_create_file("hist_debug", TRACE_MODE_READ, file->dir, file,
                          &event_hist_debug_fops);
 #endif
-       trace_create_file("format", 0444, file->dir, call,
+       trace_create_file("format", TRACE_MODE_READ, file->dir, call,
                          &ftrace_event_format_fops);
 
 #ifdef CONFIG_TRACE_EVENT_INJECT
@@ -3433,7 +3434,7 @@ create_event_toplevel_files(struct dentry *parent, struct trace_array *tr)
        struct dentry *d_events;
        struct dentry *entry;
 
-       entry = tracefs_create_file("set_event", 0644, parent,
+       entry = tracefs_create_file("set_event", TRACE_MODE_WRITE, parent,
                                    tr, &ftrace_set_event_fops);
        if (!entry) {
                pr_warn("Could not create tracefs 'set_event' entry\n");
@@ -3446,7 +3447,7 @@ create_event_toplevel_files(struct dentry *parent, struct trace_array *tr)
                return -ENOMEM;
        }
 
-       entry = trace_create_file("enable", 0644, d_events,
+       entry = trace_create_file("enable", TRACE_MODE_WRITE, d_events,
                                  tr, &ftrace_tr_enable_fops);
        if (!entry) {
                pr_warn("Could not create tracefs 'enable' entry\n");
@@ -3455,24 +3456,25 @@ create_event_toplevel_files(struct dentry *parent, struct trace_array *tr)
 
        /* There are not as crucial, just warn if they are not created */
 
-       entry = tracefs_create_file("set_event_pid", 0644, parent,
+       entry = tracefs_create_file("set_event_pid", TRACE_MODE_WRITE, parent,
                                    tr, &ftrace_set_event_pid_fops);
        if (!entry)
                pr_warn("Could not create tracefs 'set_event_pid' entry\n");
 
-       entry = tracefs_create_file("set_event_notrace_pid", 0644, parent,
-                                   tr, &ftrace_set_event_notrace_pid_fops);
+       entry = tracefs_create_file("set_event_notrace_pid",
+                                   TRACE_MODE_WRITE, parent, tr,
+                                   &ftrace_set_event_notrace_pid_fops);
        if (!entry)
                pr_warn("Could not create tracefs 'set_event_notrace_pid' entry\n");
 
        /* ring buffer internal formats */
-       entry = trace_create_file("header_page", 0444, d_events,
+       entry = trace_create_file("header_page", TRACE_MODE_READ, d_events,
                                  ring_buffer_print_page_header,
                                  &ftrace_show_header_fops);
        if (!entry)
                pr_warn("Could not create tracefs 'header_page' entry\n");
 
-       entry = trace_create_file("header_event", 0444, d_events,
+       entry = trace_create_file("header_event", TRACE_MODE_READ, d_events,
                                  ring_buffer_print_entry_header,
                                  &ftrace_show_header_fops);
        if (!entry)
@@ -3689,8 +3691,8 @@ __init int event_trace_init(void)
        if (!tr)
                return -ENODEV;
 
-       entry = tracefs_create_file("available_events", 0444, NULL,
-                                   tr, &ftrace_avail_fops);
+       entry = tracefs_create_file("available_events", TRACE_MODE_READ,
+                                   NULL, tr, &ftrace_avail_fops);
        if (!entry)
                pr_warn("Could not create tracefs 'available_events' entry\n");