diff options
author | Adrian Hunter <adrian.hunter@intel.com> | 2024-06-24 23:11:01 +0300 |
---|---|---|
committer | Peter Zijlstra <peterz@infradead.org> | 2024-07-04 16:00:23 +0200 |
commit | 0ca4da2412da05fb9dd0b5d90dcc8026219f0f29 (patch) | |
tree | e00e70ea550c741ea37fb45bfa608a39ef6404e0 | |
parent | 43deb76b19663a96ec2189d8f4eb9a9dc2d7623f (diff) |
perf: Make rb_alloc_aux() return an error immediately if nr_pages <= 0
rb_alloc_aux() should not be called with nr_pages <= 0. Make it more robust
and readable by returning an error immediately in that case.
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lore.kernel.org/r/20240624201101.60186-8-adrian.hunter@intel.com
-rw-r--r-- | kernel/events/ring_buffer.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/kernel/events/ring_buffer.c b/kernel/events/ring_buffer.c index 485cf0a66631..8cadf97bc290 100644 --- a/kernel/events/ring_buffer.c +++ b/kernel/events/ring_buffer.c @@ -682,6 +682,9 @@ int rb_alloc_aux(struct perf_buffer *rb, struct perf_event *event, if (!has_aux(event)) return -EOPNOTSUPP; + if (nr_pages <= 0) + return -EINVAL; + if (!overwrite) { /* * Watermark defaults to half the buffer, and so does the |