aboutsummaryrefslogtreecommitdiff
path: root/main-loop.c
diff options
context:
space:
mode:
authorLiu Ping Fan <qemulist@gmail.com>2013-08-25 10:01:21 +0800
committerJan Kiszka <jan.kiszka@siemens.com>2013-09-17 12:26:05 +0200
commita42e9c41888bc6a5446ef6bd95745c9fd023f107 (patch)
tree0a996aea98aaf4de80aa0a7622b57e772969e559 /main-loop.c
parent9b0ca6cc64d3542be35f1ca6174de2ab6af30ed0 (diff)
downloadqemu-arm-a42e9c41888bc6a5446ef6bd95745c9fd023f107.tar.gz
slirp: set mainloop timeout with more precise value
If slirp needs to emulate tcp timeout, then the timeout value for mainloop should be more precise, which is determined by slirp's fasttimo or slowtimo. Achieve this by swap the logic sequence of slirp_pollfds_fill and slirp_update_timeout. Signed-off-by: Liu Ping Fan <pingfank@linux.vnet.ibm.com> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Diffstat (limited to 'main-loop.c')
-rw-r--r--main-loop.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/main-loop.c b/main-loop.c
index 1c38ea2b93..c3c9c28fba 100644
--- a/main-loop.c
+++ b/main-loop.c
@@ -466,8 +466,7 @@ int main_loop_wait(int nonblocking)
g_array_set_size(gpollfds, 0); /* reset for new iteration */
/* XXX: separate device handlers from system ones */
#ifdef CONFIG_SLIRP
- slirp_update_timeout(&timeout);
- slirp_pollfds_fill(gpollfds);
+ slirp_pollfds_fill(gpollfds, &timeout);
#endif
qemu_iohandler_fill(gpollfds);