From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:47190) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Uoaaz-0004R3-4w for qemu-devel@nongnu.org; Mon, 17 Jun 2013 10:40:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Uoaak-0005e9-VO for qemu-devel@nongnu.org; Mon, 17 Jun 2013 10:39:49 -0400 Received: from e35.co.us.ibm.com ([32.97.110.153]:33506) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Uoaak-0005ce-JY for qemu-devel@nongnu.org; Mon, 17 Jun 2013 10:39:34 -0400 Received: from /spool/local by e35.co.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Mon, 17 Jun 2013 08:39:30 -0600 Received: from d03relay04.boulder.ibm.com (d03relay04.boulder.ibm.com [9.17.195.106]) by d03dlp03.boulder.ibm.com (Postfix) with ESMTP id 30F9A19D806C for ; Mon, 17 Jun 2013 08:39:18 -0600 (MDT) Received: from d03av03.boulder.ibm.com (d03av03.boulder.ibm.com [9.17.195.169]) by d03relay04.boulder.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id r5HEdGQU344870 for ; Mon, 17 Jun 2013 08:39:16 -0600 Received: from d03av03.boulder.ibm.com (loopback [127.0.0.1]) by d03av03.boulder.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id r5HEdAYw002890 for ; Mon, 17 Jun 2013 08:39:10 -0600 From: Anthony Liguori In-Reply-To: <1371477707-7039-2-git-send-email-kraxel@redhat.com> References: <1371477707-7039-1-git-send-email-kraxel@redhat.com> <1371477707-7039-2-git-send-email-kraxel@redhat.com> Date: Mon, 17 Jun 2013 09:39:02 -0500 Message-ID: <87d2rk4xa1.fsf@codemonkey.ws> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Subject: Re: [Qemu-devel] [RfC PATCH 1/2] display update with notification List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gerd Hoffmann , qemu-devel@nongnu.org Cc: alevy@redhat.com, lcapitulino@redhat.com Little more context please. Regards, Anthony Liguori Gerd Hoffmann writes: > Signed-off-by: Gerd Hoffmann > --- > include/ui/console.h | 2 ++ > ui/console.c | 15 +++++++++++++++ > 2 files changed, 17 insertions(+) > > diff --git a/include/ui/console.h b/include/ui/console.h > index 092b9be..4860687 100644 > --- a/include/ui/console.h > +++ b/include/ui/console.h > @@ -273,6 +273,7 @@ static inline void console_write_ch(console_ch_t *dest, uint32_t ch) > typedef struct GraphicHwOps { > void (*invalidate)(void *opaque); > void (*gfx_update)(void *opaque); > + void (*gfx_update_notify)(void *opaque, QEMUBH *notify); > void (*text_update)(void *opaque, console_ch_t *text); > void (*update_interval)(void *opaque, uint64_t interval); > } GraphicHwOps; > @@ -282,6 +283,7 @@ QemuConsole *graphic_console_init(DeviceState *dev, > void *opaque); > > void graphic_hw_update(QemuConsole *con); > +void graphic_hw_update_notify(QemuConsole *con, QEMUBH *notify); > void graphic_hw_invalidate(QemuConsole *con); > void graphic_hw_text_update(QemuConsole *con, console_ch_t *chardata); > > diff --git a/ui/console.c b/ui/console.c > index 07d4d63..020805c 100644 > --- a/ui/console.c > +++ b/ui/console.c > @@ -255,6 +255,21 @@ void graphic_hw_update(QemuConsole *con) > } > } > > +void graphic_hw_update_notify(QemuConsole *con, QEMUBH *notify) > +{ > + assert(con != NULL); > + > + if (con->hw_ops->gfx_update_notify) { > + con->hw_ops->gfx_update_notify(con->hw, notify); > + return; > + } > + > + if (con->hw_ops->gfx_update) { > + con->hw_ops->gfx_update(con->hw); > + } > + qemu_bh_schedule(notify); > +} > + > void graphic_hw_invalidate(QemuConsole *con) > { > if (!con) { > -- > 1.7.9.7