perf: Fix perf_event_validate_size()
authorPeter Zijlstra <peterz@infradead.org>
Wed, 29 Nov 2023 14:24:52 +0000 (15:24 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 13 Dec 2023 17:45:30 +0000 (18:45 +0100)
commitcfe9295db0932f1b8e0d94ffc75521898e5a5a8a
treefc691342f79a8e8ea171ec859e5820f7a47c2a3a
parentc66c479480f6e90dd883cc11c692e1f3b7a95e6a
perf: Fix perf_event_validate_size()

[ Upstream commit 382c27f4ed28f803b1f1473ac2d8db0afc795a1b ]

Budimir noted that perf_event_validate_size() only checks the size of
the newly added event, even though the sizes of all existing events
can also change due to not all events having the same read_format.

When we attach the new event, perf_group_attach(), we do re-compute
the size for all events.

Fixes: a723968c0ed3 ("perf: Fix u16 overflows")
Reported-by: Budimir Markovic <markovicbudimir@gmail.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
kernel/events/core.c