From nobody Wed Feb 11 06:50:07 2026 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 Return-Path: Received: from lists.gnu.org (208.118.235.17 [208.118.235.17]) by mx.zohomail.com with SMTPS id 1506037235780615.1476690309224; Thu, 21 Sep 2017 16:40:35 -0700 (PDT) Received: from localhost ([::1]:55960 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dvB4v-0007yo-PW for importer@patchew.org; Thu, 21 Sep 2017 19:40:21 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:37554) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dvAie-00056r-V4 for qemu-devel@nongnu.org; Thu, 21 Sep 2017 19:17:21 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dvAid-0004eM-U8 for qemu-devel@nongnu.org; Thu, 21 Sep 2017 19:17:20 -0400 Received: from mail-wr0-x242.google.com ([2a00:1450:400c:c0c::242]:33037) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dvAid-0004dF-Op for qemu-devel@nongnu.org; Thu, 21 Sep 2017 19:17:19 -0400 Received: by mail-wr0-x242.google.com with SMTP id b9so3866750wra.0 for ; Thu, 21 Sep 2017 16:17:19 -0700 (PDT) Received: from 640k.lan (dynamic-adsl-78-12-246-117.clienti.tiscali.it. [78.12.246.117]) by smtp.gmail.com with ESMTPSA id u186sm2596278wmd.19.2017.09.21.16.17.17 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 21 Sep 2017 16:17:17 -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=SRBLUhJ3DLeZ2epswLRbRvDtO4+yb/ZMNLEJXHel5WE=; b=EcjFeFP/pUJCsve0bZVBwK2mZ9MBldMW9uUSQZfUBEADH8hvrClJ5zWBZJhS1Svpkf K2C9ylwrrt3DJnDm+tHGZbtsWQ2EI/cX706tScwXXfnp+rCBe25jK3WurQK9gwRO3lpb pHVykpG60XXo9LQVRniNfxxhOOOZk1ECYiAT7tfsBQa0W/GNLCdyyTWz6azoK0SZ1Pm6 BGdh7h2Nj2L51+yPp4L851tr1tqZk+J3mzK1jSu/LNA8dchkqjPbT4VZJlvD+rEMtRaP /mz/Ck0c/10qsr0V36B0SSKTXCXeL4M17up2h6KWZxp7Gv8oMNeC/EAt6qV/SEruuvPd WJyg== 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=SRBLUhJ3DLeZ2epswLRbRvDtO4+yb/ZMNLEJXHel5WE=; b=ROI5H8+RZK63qDMzig1pXtNeb/YWL3KTXJ772QLMH7DvgaCmzGk4m6Y8Tgrgk91fy0 oK+yPJmTazaBjnMhbDcdjQwsZRyDgv4VW3dQXBlgX5AkGLPeHvpIybNDHwwI6GhYorrd BaqdgIKk4S14bWQp0RI8ELj1sd2zRaHqBI0clguAx3ui/08Rt36lpUbt+RE/8XdilyOC s/hd+aWMH5q+/wQP07+qJU6jd/sqNuRkjEq2iGvrK22nSm7Yx4hmW2ncy+zf4raL3Dh5 pzshAxOayxcZ6ig3VpefY+7U0yohgGr5BThuSuU7+pi7HpGwe+aujZIDfzW3G7ZEUUVa NiPw== X-Gm-Message-State: AHPjjUgRYdlfNm7NqfPTBUYCAr4/AEGE7070lnAHYdtUIuDkyIOrXvyL VdkUBonNvZfwZf9NM50XveIvMzUe X-Google-Smtp-Source: AOwi7QCD74/biz+tdyOP7NmbdW4yv/1yT2lPDF6lBQ6gIqXCaRtBAe2NeNECqInYcTDQ2IOtPUPWQA== X-Received: by 10.223.198.82 with SMTP id u18mr3351071wrg.5.1506035838494; Thu, 21 Sep 2017 16:17:18 -0700 (PDT) From: Paolo Bonzini To: qemu-devel@nongnu.org Date: Fri, 22 Sep 2017 01:16:37 +0200 Message-Id: <1506035800-30509-30-git-send-email-pbonzini@redhat.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1506035800-30509-1-git-send-email-pbonzini@redhat.com> References: <1506035800-30509-1-git-send-email-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:c0c::242 Subject: [Qemu-devel] [PULL 29/32] chardev: new qemu_chr_be_update_read_handlers() 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: Peter Xu 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: Peter Xu Add a wrapper for the chr_update_read_handler(). Signed-off-by: Peter Xu Message-Id: <1505975754-21555-2-git-send-email-peterx@redhat.com> Reviewed-by: Marc-Andr=C3=A9 Lureau Signed-off-by: Paolo Bonzini --- chardev/char-fe.c | 7 ++----- chardev/char.c | 10 ++++++++++ include/chardev/char.h | 10 ++++++++++ 3 files changed, 22 insertions(+), 5 deletions(-) diff --git a/chardev/char-fe.c b/chardev/char-fe.c index f3af6ae..ee6d596 100644 --- a/chardev/char-fe.c +++ b/chardev/char-fe.c @@ -253,7 +253,6 @@ void qemu_chr_fe_set_handlers(CharBackend *b, bool set_open) { Chardev *s; - ChardevClass *cc; int fe_open; =20 s =3D b->chr; @@ -261,7 +260,6 @@ void qemu_chr_fe_set_handlers(CharBackend *b, return; } =20 - cc =3D CHARDEV_GET_CLASS(s); if (!opaque && !fd_can_read && !fd_read && !fd_event) { fe_open =3D 0; remove_fd_in_watch(s); @@ -273,9 +271,8 @@ void qemu_chr_fe_set_handlers(CharBackend *b, b->chr_event =3D fd_event; b->chr_be_change =3D be_change; b->opaque =3D opaque; - if (cc->chr_update_read_handler) { - cc->chr_update_read_handler(s, context); - } + + qemu_chr_be_update_read_handlers(s, context); =20 if (set_open) { qemu_chr_fe_set_open(b, fe_open); diff --git a/chardev/char.c b/chardev/char.c index b6fd5eb..e090dd5 100644 --- a/chardev/char.c +++ b/chardev/char.c @@ -180,6 +180,16 @@ void qemu_chr_be_write(Chardev *s, uint8_t *buf, int l= en) } } =20 +void qemu_chr_be_update_read_handlers(Chardev *s, + GMainContext *context) +{ + ChardevClass *cc =3D CHARDEV_GET_CLASS(s); + + if (cc->chr_update_read_handler) { + cc->chr_update_read_handler(s, context); + } +} + int qemu_chr_add_client(Chardev *s, int fd) { return CHARDEV_GET_CLASS(s)->chr_add_client ? diff --git a/include/chardev/char.h b/include/chardev/char.h index 66dde46..2068ea4 100644 --- a/include/chardev/char.h +++ b/include/chardev/char.h @@ -169,6 +169,16 @@ void qemu_chr_be_write(Chardev *s, uint8_t *buf, int l= en); void qemu_chr_be_write_impl(Chardev *s, uint8_t *buf, int len); =20 /** + * @qemu_chr_be_update_read_handlers: + * + * Invoked when frontend read handlers are setup + * + * @context the gcontext that will be used to attach the watch sources + */ +void qemu_chr_be_update_read_handlers(Chardev *s, + GMainContext *context); + +/** * @qemu_chr_be_event: * * Send an event from the back end to the front end. --=20 1.8.3.1