[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] RFC: qio: Improve corking of TLS sessions
From: |
Eric Blake |
Subject: |
Re: [Qemu-devel] [PATCH] RFC: qio: Improve corking of TLS sessions |
Date: |
Mon, 10 Jun 2019 09:40:14 -0500 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 |
On 6/10/19 9:02 AM, Eric Blake wrote:
>
> send(MSG_MORE)
> send()
>
> is ideal; under the hood, we can translate it to:
>
> send(MSG_MORE)
> gnutls_record_cork()
> gnutls_record_send()
> send()
> if (size > threshold) {
> gnutls_record_uncork()
> gnutls_record_send()
> } else {
> gnutls_record_send()
> gnutls_record_uncork()
> }
>
> So we really need a way to plumb a MSG_MORE flag for senders to use,
> when they KNOW they will be sending back-to-back pieces and where the
> first piece is short, but it is not yet obvious whether the second piece
> is short or long.
This is what I meant to say,
>
> MSG_MORE was lon the next message to go through the stack, if the
> previous message next paccork for
this was an editing accident on incomplete thoughts. But I wanted to add:
Setting up the ability to pass MGS_MORE through the qio stack will
require either an update to ALL callers of qio_write to pass a flags
argument (usually 0), or to add a set of new entry points to qio for the
few callers that want to pass a non-zero flags argument (for now, nbd
and sheepdog).
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3226
Virtualization: qemu.org | libvirt.org
signature.asc
Description: OpenPGP digital signature