bcachefs: thread_with_stdio: fix spinning instead of exiting
authorKent Overstreet <kent.overstreet@linux.dev>
Sun, 4 May 2025 17:50:09 +0000 (13:50 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 4 May 2025 18:00:14 +0000 (14:00 -0400)
commitdf2e19a883fdea698cdbed4987987db999b19d58
tree0b0d271c42edd1a3efd962bc44727eff86afffaf
parent6846100b00d97d3d6f05766ae86a0d821d849e78
bcachefs: thread_with_stdio: fix spinning instead of exiting

bch2_stdio_redirect_vprintf() was missing a check for stdio->done, i.e.
exiting.

This caused the thread attempting to print to spin, and since it was
being called from the kthread ran by thread_with_stdio, the userspace
side hung as well.

Change it to return -EPIPE - i.e. writing to a pipe that's been closed.

Reported-by: Jan Solanti <jhs@psonet.com>
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/thread_with_file.c