[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 0/3 for 9.0] Fix TLS support for chardevs and incoming data loss
From: |
Daniel P . Berrangé |
Subject: |
[PATCH 0/3 for 9.0] Fix TLS support for chardevs and incoming data loss on EOF |
Date: |
Mon, 18 Mar 2024 18:23:27 +0000 |
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"
chardev/char-io.c | 55 +++++++++++++++++++++++++++++++++++++++----
chardev/char-socket.c | 22 ++++++++++++++---
2 files changed, 69 insertions(+), 8 deletions(-)
--
2.43.0
- [PATCH 0/3 for 9.0] Fix TLS support for chardevs and incoming data loss on EOF,
Daniel P . Berrangé <=