From patchwork Fri Jul 4 12:43:15 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kirill Batuzov X-Patchwork-Id: 367096 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from lists.gnu.org (lists.gnu.org [IPv6:2001:4830:134:3::11]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 0E3EF1400D5 for ; Fri, 4 Jul 2014 22:44:13 +1000 (EST) Received: from localhost ([::1]:36031 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X32qZ-0001jD-Ax for incoming@patchwork.ozlabs.org; Fri, 04 Jul 2014 08:44:11 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:48039) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X32qB-0001MQ-72 for qemu-devel@nongnu.org; Fri, 04 Jul 2014 08:43:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1X32q5-0004w1-4z for qemu-devel@nongnu.org; Fri, 04 Jul 2014 08:43:47 -0400 Received: from smtp.ispras.ru ([83.149.199.79]:55074) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1X32q4-0004vr-U9 for qemu-devel@nongnu.org; Fri, 04 Jul 2014 08:43:41 -0400 Received: from bulbul.intra.ispras.ru (unknown [83.149.199.91]) by smtp.ispras.ru (Postfix) with ESMTP id 3946F224CF; Fri, 4 Jul 2014 16:43:38 +0400 (MSK) From: Kirill Batuzov To: qemu-devel@nongnu.org Date: Fri, 4 Jul 2014 16:43:15 +0400 Message-Id: <1404477795-1067-1-git-send-email-batuzovk@ispras.ru> X-Mailer: git-send-email 1.7.10.4 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 83.149.199.79 Cc: Luiz Capitulino , "Michael S . Tsirkin" , Kirill Batuzov Subject: [Qemu-devel] [PATCH] qemu-char: add chr_add_watch support in mux chardev X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Sender: qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org Forward chr_add_watch call from mux chardev to underlying implementation. This should fix bug #1335444 Signed-off-by: Kirill Batuzov --- qemu-char.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/qemu-char.c b/qemu-char.c index 51917de..e1bd6f5 100644 --- a/qemu-char.c +++ b/qemu-char.c @@ -581,6 +581,12 @@ static Notifier muxes_realize_notify = { .notify = muxes_realize_done, }; +static GSource *mux_chr_add_watch(CharDriverState *s, GIOCondition cond) +{ + MuxDriver *d = s->opaque; + return d->drv->chr_add_watch(d->drv, cond); +} + static CharDriverState *qemu_chr_open_mux(CharDriverState *drv) { CharDriverState *chr; @@ -597,6 +603,9 @@ static CharDriverState *qemu_chr_open_mux(CharDriverState *drv) chr->chr_accept_input = mux_chr_accept_input; /* Frontend guest-open / -close notification is not support with muxes */ chr->chr_set_fe_open = NULL; + if (drv->chr_add_watch) { + chr->chr_add_watch = mux_chr_add_watch; + } /* only default to opened state if we've realized the initial * set of muxes */