[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 07/14] qemu-char:stdio insert poll call into read on
From: |
Juan Quintela |
Subject: |
[Qemu-devel] [PATCH 07/14] qemu-char:stdio insert poll call into read one |
Date: |
Wed, 10 Mar 2010 11:03:21 +0100 |
This way we can remove the poll test
Signed-off-by: Juan Quintela <address@hidden>
---
qemu-char.c | 22 +++++++---------------
1 files changed, 7 insertions(+), 15 deletions(-)
diff --git a/qemu-char.c b/qemu-char.c
index 6ea4e8c..93b3ea4 100644
--- a/qemu-char.c
+++ b/qemu-char.c
@@ -664,8 +664,10 @@ static CharDriverState *qemu_chr_open_pipe(QemuOpts *opts)
static uint8_t term_fifo[TERM_FIFO_MAX_SIZE];
static int term_fifo_size;
-static int stdio_read_poll(void *opaque)
+static void stdio_read(void *opaque)
{
+ int size;
+ uint8_t buf[1];
CharDriverState *chr = opaque;
/* try to flush the queue if needed */
@@ -673,19 +675,9 @@ static int stdio_read_poll(void *opaque)
qemu_chr_read(chr, term_fifo, 1);
term_fifo_size = 0;
}
- /* see if we can absorb more chars */
- if (term_fifo_size == 0)
- return 1;
- else
- return 0;
-}
-
-static void stdio_read(void *opaque)
-{
- int size;
- uint8_t buf[1];
- CharDriverState *chr = opaque;
-
+ if (term_fifo_size != 0) {
+ return;
+ }
size = read(0, buf, 1);
if (size == 0) {
/* stdin has been closed. Remove it from the active list. */
@@ -757,7 +749,7 @@ static CharDriverState *qemu_chr_open_stdio(QemuOpts *opts)
return NULL;
chr = qemu_chr_open_fd(0, 1);
chr->chr_close = qemu_chr_close_stdio;
- qemu_set_fd_handler2(0, stdio_read_poll, stdio_read, NULL, chr);
+ qemu_set_fd_handler(0, stdio_read, NULL, chr);
stdio_nb_clients++;
term_init(opts);
--
1.6.6.1
- Re: [Qemu-devel] [PATCH 01/14] Convert io handlers to QLIST, (continued)
- Re: [Qemu-devel] [PATCH 01/14] Convert io handlers to QLIST, malc, 2010/03/10
- [Qemu-devel] Re: [PATCH 01/14] Convert io handlers to QLIST, Juan Quintela, 2010/03/10
- [Qemu-devel] Re: [PATCH 01/14] Convert io handlers to QLIST, malc, 2010/03/10
- [Qemu-devel] Re: [PATCH 01/14] Convert io handlers to QLIST, Juan Quintela, 2010/03/10
- [Qemu-devel] Re: [PATCH 01/14] Convert io handlers to QLIST, malc, 2010/03/10
- [Qemu-devel] Re: [PATCH 01/14] Convert io handlers to QLIST, Juan Quintela, 2010/03/10
[Qemu-devel] [PATCH 02/14] remove useless cast, Juan Quintela, 2010/03/10
[Qemu-devel] [PATCH 03/14] rename IOCanRWHandler to IOCanReadHandler, Juan Quintela, 2010/03/10
[Qemu-devel] [PATCH 04/14] bt: remove bt_host_read_poll(), Juan Quintela, 2010/03/10
[Qemu-devel] [PATCH 05/14] Handle deleted IOHandlers in a single pass, Juan Quintela, 2010/03/10
[Qemu-devel] [PATCH 07/14] qemu-char:stdio insert poll call into read one,
Juan Quintela <=
[Qemu-devel] [PATCH 08/14] qemu-char:tcp insert poll call into read one, Juan Quintela, 2010/03/10
[Qemu-devel] [PATCH 06/14] tap: insert tap_can_send() into tap_send(), Juan Quintela, 2010/03/10
[Qemu-devel] [PATCH 09/14] qemu-char:fd insert poll call into read one, Juan Quintela, 2010/03/10
[Qemu-devel] [PATCH 10/14] qemu-char:pty insert poll call into read one, Juan Quintela, 2010/03/10
[Qemu-devel] [PATCH 11/14] qemu-char:udp insert poll call into read one, Juan Quintela, 2010/03/10
[Qemu-devel] [PATCH 13/14] Remove now unused fd_read_poll and all its only left user, Juan Quintela, 2010/03/10
[Qemu-devel] [PATCH 14/14] Add qemu_remove_fd_handler(), Juan Quintela, 2010/03/10
[Qemu-devel] [PATCH 12/14] Remove qemu_set_fd_handler2(), Juan Quintela, 2010/03/10