This fixes a problem with TLS support on chardevs that Thomas has
previously attempted to deal with:
https://lists.nongnu.org/archive/html/qemu-devel/2024-02/msg06915.html
Unfortunately that fix caused unexpected side effects that resulted
in premature termination of the TLS connection. See patch 2 for
details.
I've since identified the root cause of the problem that Thomas was
trying to fix - bad assumptions about GSource 'prepare' functions
always being run. See patch 3 for details.
Patch 3 re-exposed a bug we've know about for a while whereby incoming
data on chardevs is sometimes discarded when POLLHUP is reported at the
same time. This required patch 1 to be applied before doing the revert
in patch 3, otherwise test-char would now very frequently fail.
So we get 2 bug fixes for the price of one :-)
Daniel P. Berrangé (3):
chardev: lower priority of the HUP GSource in socket chardev
Revert "chardev/char-socket: Fix TLS io channels sending too much data
to the backend"
Revert "chardev: use a child source for qio input source"