coredump: fix error handling for replace_fd()
authorChristian Brauner <brauner@kernel.org>
Mon, 14 Apr 2025 13:55:06 +0000 (15:55 +0200)
committerChristian Brauner <brauner@kernel.org>
Fri, 2 May 2025 12:28:46 +0000 (14:28 +0200)
commit95c5f43181fe9c1b5e5a4bd3281c857a5259991f
tree8ca69c2a9b138cf0be3e91b2a208dc88817fdcfa
parentc57f07b235871c9e5bffaccd458dca2d9a62b164
coredump: fix error handling for replace_fd()

The replace_fd() helper returns the file descriptor number on success
and a negative error code on failure. The current error handling in
umh_pipe_setup() only works because the file descriptor that is replaced
is zero but that's pretty volatile. Explicitly check for a negative
error code.

Link: https://lore.kernel.org/20250414-work-coredump-v2-2-685bf231f828@kernel.org
Tested-by: Luca Boccassi <luca.boccassi@gmail.com>
Reviewed-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/coredump.c