From nobody Tue Feb 10 03:38:15 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.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 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=fail(p=none dis=none) header.from=126.com Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1553448260495550.32538154147; Sun, 24 Mar 2019 10:24:20 -0700 (PDT) Received: from localhost ([127.0.0.1]:58743 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h86qt-0003Iu-ME for importer@patchew.org; Sun, 24 Mar 2019 13:24:07 -0400 Received: from eggs.gnu.org ([209.51.188.92]:44547) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h86oq-0002C9-Jh for qemu-devel@nongnu.org; Sun, 24 Mar 2019 13:22:01 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h86op-0000Lr-NF for qemu-devel@nongnu.org; Sun, 24 Mar 2019 13:22:00 -0400 Received: from m15-112.126.com ([220.181.15.112]:50644) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h86oo-0000JJ-Ot for qemu-devel@nongnu.org; Sun, 24 Mar 2019 13:21:59 -0400 Received: from localhost.localdomain (unknown [1.202.123.222]) by smtp2 (Coremail) with SMTP id DMmowABHfEGxvJdcvRevCA--.55336S10; Mon, 25 Mar 2019 01:21:56 +0800 (CST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=126.com; s=s110527; h=From:Subject:Date:Message-Id; bh=a7cOaNKOFVCM1RYEuV rc0cAX7rehyDeDhDPuwq6sluM=; b=Bldt/+XSRoKOQLX7ILFN9BSpVyud7iuU1n /Bi5dLIJ6/Gu7KNVGcxhUd21S3/rp2huQZVZOBgZhZ1ck5liA9ziEeylY+Y/fOoo RR7XjNkXOxw+ylc1yBZtWlGetpF+CHg4v3InTbL8IogwEgEps2FLIpr3o/bEx6ck 9urJeOBrA= From: Fei Li To: qemu-devel@nongnu.org Date: Mon, 25 Mar 2019 01:21:45 +0800 Message-Id: <20190324172148.3566-9-lifei1214@126.com> X-Mailer: git-send-email 2.17.2 (Apple Git-113) In-Reply-To: <20190324172148.3566-1-lifei1214@126.com> References: <20190324172148.3566-1-lifei1214@126.com> X-CM-TRANSID: DMmowABHfEGxvJdcvRevCA--.55336S10 X-Coremail-Antispam: 1Uf129KBjvJXoW7CF17Xr1fAw4kAryUWw1ftFb_yoW8GrW3pr WDCwnxtFZ3Xr1kKrnxJa1vya45WFZYqFy3GFZrAa4xJ3W5tFW3XrWUta48ur1a9rykJFWr ZF4FgF1fuanxJaUanT9S1TB71UUUUUUqnTZGkaVYY2UrUUUUjbIjqfuFe4nvWSU5nxnvy2 9KBjDUYxBIdaVFxhVjvjDU0xZFpf9x07bInQUUUUUU= X-Originating-IP: [1.202.123.222] X-CM-SenderInfo: 5olivxarsrkqqrswhudrp/1tbikhSBIVpD8EbRfQAAsl X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 220.181.15.112 Subject: [Qemu-devel] [PATCH v12 for-4.1 08/11] qemu_thread: supplement error handling for qemu_signalfd_compat 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: , Cc: lifei1214@126.com, Markus Armbruster , Fei Li Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" From: Fei Li Set errno, do some cleanup, and return -1 to replace the temporary &error_abort when failing to create sigwait_compat. Cc: Markus Armbruster Cc: Eric Blake Signed-off-by: Fei Li Reviewed-by: Markus Armbruster --- util/compatfd.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/util/compatfd.c b/util/compatfd.c index c3d8448264..9d642475fc 100644 --- a/util/compatfd.c +++ b/util/compatfd.c @@ -71,6 +71,7 @@ static int qemu_signalfd_compat(const sigset_t *mask) struct sigfd_compat_info *info; QemuThread thread; int fds[2]; + int ret; =20 info =3D malloc(sizeof(*info)); if (info =3D=3D NULL) { @@ -89,9 +90,15 @@ static int qemu_signalfd_compat(const sigset_t *mask) memcpy(&info->mask, mask, sizeof(*mask)); info->fd =3D fds[1]; =20 - /* TODO: let the further caller handle the error instead of abort() he= re */ - qemu_thread_create(&thread, "signalfd_compat", sigwait_compat, - info, QEMU_THREAD_DETACHED, &error_abort); + ret =3D qemu_thread_create(&thread, "signalfd_compat", sigwait_compat, + info, QEMU_THREAD_DETACHED, NULL); + if (ret < 0) { + close(fds[0]); + close(fds[1]); + free(info); + errno =3D -ret; + return -1; + } =20 return fds[0]; } --=20 2.11.0