diff options
| author | Steven Rostedt <rostedt@goodmis.org> | 2026-08-14 20:03:38 -0400 |
|---|---|---|
| committer | Steven Rostedt <rostedt@goodmis.org> | 2026-08-14 20:03:38 -0400 |
| commit | 3df3ae98c30c249c4bbf3d74559cc6972898052c (patch) | |
| tree | 52b5e9fb1e5939794db7d7f8cb44f1535d798cb3 | |
| parent | f40f5a97f50fe02512229f8fb6a4f6ef54a80254 (diff) | |
| parent | 43a17abc83c6402bffac80a6dd434f8555f457e8 (diff) | |
| download | linux-next-3df3ae98c30c249c4bbf3d74559cc6972898052c.tar.gz linux-next-3df3ae98c30c249c4bbf3d74559cc6972898052c.zip | |
Merge tracefs/for-next
| -rw-r--r-- | fs/tracefs/event_inode.c | 4 | ||||
| -rw-r--r-- | kernel/trace/trace_events.c | 13 |
2 files changed, 11 insertions, 6 deletions
diff --git a/fs/tracefs/event_inode.c b/fs/tracefs/event_inode.c index a52458435327..604ba3e841d2 100644 --- a/fs/tracefs/event_inode.c +++ b/fs/tracefs/event_inode.c @@ -594,6 +594,10 @@ static int eventfs_iterate(struct file *file, struct dir_context *ctx) if (!(ti->flags & TRACEFS_EVENT_INODE)) return -EINVAL; + /* Logic should prevent ctx->pos from going out of range */ + if (WARN_ON_ONCE(ctx->pos < 2 || ctx->pos > 0x7fffffffULL)) + return -EINVAL; + c = ctx->pos - 2; guard(srcu)(&eventfs_srcu); diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c index f716f501686b..9a082a82a98a 100644 --- a/kernel/trace/trace_events.c +++ b/kernel/trace/trace_events.c @@ -3296,6 +3296,13 @@ event_create_dir(struct eventfs_inode *parent, struct trace_event_file *file) if (WARN_ON_ONCE(strcmp(call->class->system, TRACE_SYSTEM) == 0)) return -ENODEV; + ret = event_define_fields(call); + if (ret < 0) { + pr_warn("Could not initialize trace point events/%s\n", + trace_event_name(call)); + return ret; + } + e_events = event_subsystem_dir(tr, call->class->system, file, parent); if (!e_events) return -ENOMEM; @@ -3314,12 +3321,6 @@ event_create_dir(struct eventfs_inode *parent, struct trace_event_file *file) file->ei = ei; - ret = event_define_fields(call); - if (ret < 0) { - pr_warn("Could not initialize trace point events/%s\n", name); - return ret; - } - /* Gets decremented on freeing of the "enable" file */ event_file_get(file); |
