It is a normal scenario that the request may have been killed when a response is returned. So we shouldn't return -EINVAL to the response writer, just need to complete the request with error. Otherwise it breaks the userspace thread.
Related to #VSTOR-98704 Signed-off-by: Liu Kui <kui....@virtuozzo.com> --- fs/fuse/dev.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/fs/fuse/dev.c b/fs/fuse/dev.c index 101bd4907828..cc6b9f348cf6 100644 --- a/fs/fuse/dev.c +++ b/fs/fuse/dev.c @@ -2339,7 +2339,8 @@ static ssize_t fuse_dev_do_write(struct fuse_dev *fud, cs->move_pages = 0; if (req->args->killed) { - err = -EINVAL; + err = 0; + req->out.h.error = -EIO; } else if (oh.error == FUSE_OUT_SPLICES) { req->out.h.error = 0; err = copy_out_splices(cs, req->args, nbytes); -- 2.39.5 (Apple Git-154) _______________________________________________ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel