diff options
| author | Christian Brauner <brauner@kernel.org> | 2026-08-20 01:09:21 +0200 |
|---|---|---|
| committer | Christian Brauner <brauner@kernel.org> | 2026-09-22 13:24:56 +0200 |
| commit | 73337f1ac1379e31cc37868e5a61e4202f095a88 (patch) | |
| tree | fc621cbe1b67c84c51da2e2effea09eefcc33b6f /tools/perf/scripts/python | |
| parent | 37ceeb9e21cbcd4ec6fad51822d74ec722b9c38e (diff) | |
selftests/coredump: discard the right amount after the coredump request
read_coredump_req() gets the leftover wrong twice.
It takes the absolute difference of the two sizes, so a test binary that
knows a larger struct coredump_req than the kernel sends tries to discard
bytes that were never sent. And it hands recv() sizeof(buffer) instead of
the number of bytes it wants. So MSG_WAITALL waits for a whole page.
Either one blocks until the kernel closes the socket. Which it won't
because it is waiting for the coredump ack...
It's benign today because struct coredump_req hasn't grown. But let's fix
it for the future. Compute the leftover as what the kernel sent beyond
what was consumed.
Fixes: 59cd658eaf40 ("selftests/coredump: add coredump server selftests")
Link: https://patch.msgid.link/20260820-work-coredump-sparse-v2-4-ba32dd718c51@kernel.org
Signed-off-by: Christian Brauner (Amutable) <brauner@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python')
0 files changed, 0 insertions, 0 deletions
