From: "Marc-André Lureau" <marcandre.lureau@gmail.com>
To: qemu-devel@nongnu.org
Cc: pbonzini@redhat.com, kraxel@redhat.com,
"Marc-André Lureau" <marcandre.lureau@redhat.com>
Subject: [Qemu-devel] [PATCH 06/13] char: add qemu_chr_fe_event()
Date: Fri, 29 Nov 2013 15:58:37 +0100 [thread overview]
Message-ID: <1385737124-13964-7-git-send-email-marcandre.lureau@gmail.com> (raw)
In-Reply-To: <1385737124-13964-1-git-send-email-marcandre.lureau@gmail.com>
From: Marc-André Lureau <marcandre.lureau@redhat.com>
Teach the chardev frontend to send event. This is used by the Spice port
chardev currently.
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
---
include/sysemu/char.h | 10 ++++++++++
qemu-char.c | 7 +++++++
2 files changed, 17 insertions(+)
diff --git a/include/sysemu/char.h b/include/sysemu/char.h
index ad101d9..b81a6ff 100644
--- a/include/sysemu/char.h
+++ b/include/sysemu/char.h
@@ -69,6 +69,7 @@ struct CharDriverState {
void (*chr_accept_input)(struct CharDriverState *chr);
void (*chr_set_echo)(struct CharDriverState *chr, bool echo);
void (*chr_set_fe_open)(struct CharDriverState *chr, int fe_open);
+ void (*chr_fe_event)(struct CharDriverState *chr, int event);
void *opaque;
char *label;
char *filename;
@@ -138,6 +139,15 @@ void qemu_chr_fe_set_echo(struct CharDriverState *chr, bool echo);
void qemu_chr_fe_set_open(struct CharDriverState *chr, int fe_open);
/**
+ * @qemu_chr_fe_event:
+ *
+ * Send an event from the front end to the back end.
+ *
+ * @event the event to send
+ */
+void qemu_chr_fe_event(CharDriverState *s, int event);
+
+/**
* @qemu_chr_fe_printf:
*
* Write to a character backend using a printf style interface.
diff --git a/qemu-char.c b/qemu-char.c
index e00f84c..418dc69 100644
--- a/qemu-char.c
+++ b/qemu-char.c
@@ -3353,6 +3353,13 @@ void qemu_chr_fe_set_open(struct CharDriverState *chr, int fe_open)
}
}
+void qemu_chr_fe_event(struct CharDriverState *chr, int event)
+{
+ if (chr->chr_fe_event) {
+ chr->chr_fe_event(chr, event);
+ }
+}
+
int qemu_chr_fe_add_watch(CharDriverState *s, GIOCondition cond,
GIOFunc func, void *user_data)
{
--
1.8.4.2
next prev parent reply other threads:[~2013-11-29 14:59 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-29 14:58 [Qemu-devel] [PATCH 00/13] Spice block device, ready-to-go patches Marc-André Lureau
2013-11-29 14:58 ` [Qemu-devel] [PATCH 01/13] coroutine: remove qemu_co_queue_wait_insert_head Marc-André Lureau
2013-11-29 14:58 ` [Qemu-devel] [PATCH 02/13] vscclient: do not add a socket watch if there is not data to send Marc-André Lureau
2013-11-29 14:58 ` [Qemu-devel] [PATCH 03/13] spice-char: remove unused field Marc-André Lureau
2013-11-29 14:58 ` [Qemu-devel] [PATCH 04/13] qmp_change_blockdev() remove unused has_format Marc-André Lureau
2013-11-29 14:58 ` [Qemu-devel] [PATCH 05/13] include: add missing config-host.h include Marc-André Lureau
2013-11-29 14:58 ` Marc-André Lureau [this message]
2013-11-29 14:58 ` [Qemu-devel] [PATCH 07/13] spice-char: implement chardev port event Marc-André Lureau
2013-11-29 14:58 ` [Qemu-devel] [PATCH 08/13] Split nbd block client code Marc-André Lureau
2013-11-29 15:32 ` Paolo Bonzini
2013-11-29 14:58 ` [Qemu-devel] [PATCH 09/13] nbd: don't change socket block during negotiate Marc-André Lureau
2013-11-29 15:22 ` Paolo Bonzini
2013-11-30 15:49 ` Marc-André Lureau
2013-11-30 19:08 ` Paolo Bonzini
2013-12-01 20:56 ` Marc-André Lureau
2013-11-29 14:58 ` [Qemu-devel] [PATCH 10/13] nbd: pass export name as init argument Marc-André Lureau
2013-11-29 15:27 ` Paolo Bonzini
2013-11-29 14:58 ` [Qemu-devel] [PATCH 11/13] nbd: make session_close() idempotent Marc-André Lureau
2013-11-29 15:28 ` Paolo Bonzini
2013-11-29 14:58 ` [Qemu-devel] [PATCH 12/13] nbd: finish any pending coroutine Marc-André Lureau
2013-11-29 15:25 ` Paolo Bonzini
2013-11-29 14:58 ` [Qemu-devel] [PATCH 13/13] nbd: avoid uninitialized warnings Marc-André Lureau
2013-11-29 15:27 ` Paolo Bonzini
2013-11-29 15:32 ` [Qemu-devel] [PATCH 00/13] Spice block device, ready-to-go patches Paolo Bonzini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1385737124-13964-7-git-send-email-marcandre.lureau@gmail.com \
--to=marcandre.lureau@gmail.com \
--cc=kraxel@redhat.com \
--cc=marcandre.lureau@redhat.com \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).