summaryrefslogtreecommitdiff
path: root/slirp
diff options
context:
space:
mode:
authorJan Kiszka <jan.kiszka@siemens.com>2009-06-24 14:42:30 +0200
committerAnthony Liguori <aliguori@us.ibm.com>2009-06-29 08:52:49 -0500
commitf1d99bbdcd395651e9c1ee71825e29b503f4129a (patch)
treeaabdcc22f1c273d7f8e2c183e736dd17abd0b1d5 /slirp
parentslirp: Drop redundant checks from slirp_output (diff)
downloadqemu-kvm-f1d99bbdcd395651e9c1ee71825e29b503f4129a.tar.gz
qemu-kvm-f1d99bbdcd395651e9c1ee71825e29b503f4129a.tar.bz2
qemu-kvm-f1d99bbdcd395651e9c1ee71825e29b503f4129a.zip
slirp: Clean up timeout handling around slirp_select_fill/poll
Again lot of dead code. Remove it. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Diffstat (limited to 'slirp')
-rw-r--r--slirp/misc.c2
-rw-r--r--slirp/misc.h1
-rw-r--r--slirp/slirp.c40
3 files changed, 4 insertions, 39 deletions
diff --git a/slirp/misc.c b/slirp/misc.c
index cffb3a0da..ee14db5e3 100644
--- a/slirp/misc.c
+++ b/slirp/misc.c
@@ -14,8 +14,6 @@
int slirp_debug = DBG_CALL|DBG_MISC|DBG_ERROR;
#endif
-u_int curtime, time_fasttimo, last_slowtimo;
-
struct quehead {
struct quehead *qh_link;
struct quehead *qh_rlink;
diff --git a/slirp/misc.h b/slirp/misc.h
index c21f69b06..2f478885d 100644
--- a/slirp/misc.h
+++ b/slirp/misc.h
@@ -17,7 +17,6 @@ struct ex_list {
};
extern struct ex_list *exec_list;
-extern u_int time_fasttimo, last_slowtimo;
#ifndef HAVE_STRDUP
char *strdup _P((const char *));
diff --git a/slirp/slirp.c b/slirp/slirp.c
index cf52d36ec..9b51c0b01 100644
--- a/slirp/slirp.c
+++ b/slirp/slirp.c
@@ -52,13 +52,16 @@ static struct in_addr client_ipaddr;
static const uint8_t zero_ethaddr[6] = { 0, 0, 0, 0, 0, 0 };
int slirp_restrict;
-static int do_slowtimo;
int link_up;
struct ex_list *exec_list;
/* XXX: suppress those select globals */
fd_set *global_readfds, *global_writefds, *global_xfds;
+u_int curtime;
+static u_int time_fasttimo, last_slowtimo;
+static int do_slowtimo;
+
char slirp_hostname[33];
#ifdef _WIN32
@@ -267,9 +270,7 @@ void slirp_select_fill(int *pnfds,
fd_set *readfds, fd_set *writefds, fd_set *xfds)
{
struct socket *so, *so_next;
- struct timeval timeout;
int nfds;
- int tmp_time;
if (!link_up) {
return;
@@ -380,39 +381,6 @@ void slirp_select_fill(int *pnfds,
}
}
- /*
- * Setup timeout to use minimum CPU usage, especially when idle
- */
-
- /*
- * First, see the timeout needed by *timo
- */
- timeout.tv_sec = 0;
- timeout.tv_usec = -1;
- /*
- * If a slowtimo is needed, set timeout to 500ms from the last
- * slow timeout. If a fast timeout is needed, set timeout within
- * 200ms of when it was requested.
- */
- if (do_slowtimo) {
- /* XXX + 10000 because some select()'s aren't that accurate */
- timeout.tv_usec = ((500 - (curtime - last_slowtimo)) * 1000) + 10000;
- if (timeout.tv_usec < 0)
- timeout.tv_usec = 0;
- else if (timeout.tv_usec > 510000)
- timeout.tv_usec = 510000;
-
- /* Can only fasttimo if we also slowtimo */
- if (time_fasttimo) {
- tmp_time = (200 - (curtime - time_fasttimo)) * 1000;
- if (tmp_time < 0)
- tmp_time = 0;
-
- /* Choose the smallest of the 2 */
- if (tmp_time < timeout.tv_usec)
- timeout.tv_usec = (u_int)tmp_time;
- }
- }
*pnfds = nfds;
}