From nobody Tue Dec 16 07:06:22 2025 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=redhat.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1520981578354247.8145972698834; Tue, 13 Mar 2018 15:52:58 -0700 (PDT) Received: from localhost ([::1]:43300 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1evsmq-00011J-F9 for importer@patchew.org; Tue, 13 Mar 2018 18:52:52 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:57856) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1evshm-0005SX-1K for qemu-devel@nongnu.org; Tue, 13 Mar 2018 18:47:39 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1evshk-0002to-6Q for qemu-devel@nongnu.org; Tue, 13 Mar 2018 18:47:38 -0400 Received: from mail-wm0-x242.google.com ([2a00:1450:400c:c09::242]:52829) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1evshj-0002sj-V0 for qemu-devel@nongnu.org; Tue, 13 Mar 2018 18:47:36 -0400 Received: by mail-wm0-x242.google.com with SMTP id t3so867637wmc.2 for ; Tue, 13 Mar 2018 15:47:35 -0700 (PDT) Received: from donizetti.lan (94-36-191-219.adsl-ull.clienti.tiscali.it. [94.36.191.219]) by smtp.gmail.com with ESMTPSA id x107sm1557951wrb.97.2018.03.13.15.47.33 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 13 Mar 2018 15:47:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=ROp3wnLvUUt3TW5IA+OU+MCe1Z4tC7St2LCqPF8Aoeg=; b=Irnd3AAGkYC+Vkl3GfWs792S6j10ZgMTHrdBlYm5dbVuXPD24l/Ifx/4qqTMVxPS51 MIHn3+9RRnVDl1Ff78AVZjBxNj7GwnNDzKH1N+tnIWp/MltO1G9mOvqxLlsSEyPgk4gB T7VgLxx2fY2mwxa3dfQ12is1JfOMU1mqR5+SnS3E7XZKSAO7gtWMhWnTsdeUyNXvLxvN 8lE4YDOKSHVt0fGp+qONeNXL1hQDsJOcWEvGEw4lZ1ip6gX/o33Ih58Egc26zH1wQT6C jXTSufVpxeHdYDz8/vSpCoXryllI0Gx+Q3pkJu8oMhUxxUGWYR/xHP7862iJTZeAJ3eN sGMg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references:mime-version:content-transfer-encoding; bh=ROp3wnLvUUt3TW5IA+OU+MCe1Z4tC7St2LCqPF8Aoeg=; b=PPgcuxLLqfdp6Y/PglEaknsk0DZ4JeEyEjRcO151x7pUAZUKCJhhxDntNebdM6WgEC FrqYiBxzCTdbq3v+8waINtSsJrPktFGEiyr9KJGc2lteLzL5tiWkauhmGfw1/MyL7OWL SeOVlZD1CUEQDoh2po4ZTHpZqlBfKhGsYJ6/LGGTzpJboaGyjnDl3RveFbCLuBloPVnh zDuX+tmR95bir0EY9RArstQUvBpH6rWP9MLIqpO9dKuc0tx2VhDC7FiXrlEUkZBQ/HZ+ TV/0v5AcZytdb1jFYq8QWR07r2EVuy3CzaPGtyAzFRPYXZf2UsG+oXcsk1AYrUN5qm2z eN6Q== X-Gm-Message-State: AElRT7EjQTXKkzbKSISiG4BIcqFsz9QJ+wiknW0w10ufnC7MZkLFBr6G ehBlpEq2X1b44xZ9Mc/SmLN8KTaj X-Google-Smtp-Source: AG47ELtjiVyo9hYOXGW5+9tSGEBqyCuVSje2MUvK+BnyfQuQPf7JFm3prHsRzQXcZCkWSv/hYYv1LQ== X-Received: by 10.28.180.132 with SMTP id d126mr2113617wmf.93.1520981254566; Tue, 13 Mar 2018 15:47:34 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Date: Tue, 13 Mar 2018 23:46:21 +0100 Message-Id: <20180313224719.4954-12-pbonzini@redhat.com> X-Mailer: git-send-email 2.14.3 In-Reply-To: <20180313224719.4954-1-pbonzini@redhat.com> References: <20180313224719.4954-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:400c:c09::242 Subject: [Qemu-devel] [PULL 11/69] chardev: fix handling of EAGAIN for TCP chardev X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) X-ZohoMail: RDKM_2 RSF_0 Z_629925259 SPT_0 From: Daniel P. Berrang=C3=A9 When this commit was applied commit 9894dc0cdcc397ee5b26370bc53da6d360a363c2 Author: Daniel P. Berrange Date: Tue Jan 19 11:14:29 2016 +0000 char: convert from GIOChannel to QIOChannel The tcp_chr_recv() function was changed to return QIO_CHANNEL_ERR_BLOCK which corresonds to -2. As such the handling for EAGAIN was able to be removed from tcp_chr_read(). Unfortunately in a later commit: commit b6572b4f97a7b126c7b24e165893ed9fe3d72e1f Author: Marc-Andr=C3=A9 Lureau Date: Fri Mar 11 18:55:24 2016 +0100 char: translate from QIOChannel error to errno The tcp_chr_recv() function was changed back to return -1, with errno set to EAGAIN, without also re-addding support for this to tcp_chr_read() Reported-by: Aleksey Kuleshov Signed-off-by: Daniel P. Berrang=C3=A9 Message-Id: <20180222121351.26191-1-berrange@redhat.com> Reviewed-by: Marc-Andr=C3=A9 Lureau Signed-off-by: Paolo Bonzini --- chardev/char-socket.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chardev/char-socket.c b/chardev/char-socket.c index a220803c01..541fcf487d 100644 --- a/chardev/char-socket.c +++ b/chardev/char-socket.c @@ -450,7 +450,7 @@ static gboolean tcp_chr_read(QIOChannel *chan, GIOCondi= tion cond, void *opaque) len =3D s->max_size; } size =3D tcp_chr_recv(chr, (void *)buf, len); - if (size =3D=3D 0 || size =3D=3D -1) { + if (size =3D=3D 0 || (size =3D=3D -1 && errno !=3D EAGAIN)) { /* connection closed */ tcp_chr_disconnect(chr); } else if (size > 0) { --=20 2.14.3