migration: simplify error reporting after channel read
The code handling the return value of qio_channel_read proceses len == 0 (EOF) separately from len < 1 (error), but in both cases ends up calling qemu_file_set_error_obj() with -EIO as the errno. This logic can be merged into one codepath to simplify it. Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Peter Xu <peterx@redhat.com> Reviewed-by: Prasad Pandit <pjp@fedoraproject.org> Link: https://lore.kernel.org/r/20250801170212.54409-2-berrange@redhat.com Signed-off-by: Peter Xu <peterx@redhat.com>
This commit is contained in:
parent
300a87c502
commit
a5bc1ccca9
1 changed files with 1 additions and 5 deletions
|
|
@ -348,17 +348,13 @@ static ssize_t coroutine_mixed_fn qemu_fill_buffer(QEMUFile *f)
|
|||
} else {
|
||||
qio_channel_wait(f->ioc, G_IO_IN);
|
||||
}
|
||||
} else if (len < 0) {
|
||||
len = -EIO;
|
||||
}
|
||||
} while (len == QIO_CHANNEL_ERR_BLOCK);
|
||||
|
||||
if (len > 0) {
|
||||
f->buf_size += len;
|
||||
} else if (len == 0) {
|
||||
qemu_file_set_error_obj(f, -EIO, local_error);
|
||||
} else {
|
||||
qemu_file_set_error_obj(f, len, local_error);
|
||||
qemu_file_set_error_obj(f, -EIO, local_error);
|
||||
}
|
||||
|
||||
for (int i = 0; i < nfd; i++) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue