diff options
author | Anthony Liguori | 2012-03-13 19:56:13 +0100 |
---|---|---|
committer | Anthony Liguori | 2012-03-13 19:56:13 +0100 |
commit | 3e7ecd976b06fc9054a34bda093a70efae99588b (patch) | |
tree | bd4aa371069fb6709f3f8e38c157b3c3185b45b5 /slirp/slirp.c | |
parent | Merge remote-tracking branch 'kraxel/usb.44' into staging (diff) | |
parent | slirp: Fix compiler warning for w64 (diff) | |
download | qemu-3e7ecd976b06fc9054a34bda093a70efae99588b.tar.gz qemu-3e7ecd976b06fc9054a34bda093a70efae99588b.tar.xz qemu-3e7ecd976b06fc9054a34bda093a70efae99588b.zip |
Merge remote-tracking branch 'kiszka/queues/slirp' into staging
* kiszka/queues/slirp:
slirp: Fix compiler warning for w64
slirp: Cleanup resources on instance removal
slirp: Remove unneeded if_queued
slirp: Fix queue walking in if_start
slirp: Prevent recursion of if_start
slirp: Keep next_m always valid
Diffstat (limited to 'slirp/slirp.c')
-rw-r--r-- | slirp/slirp.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/slirp/slirp.c b/slirp/slirp.c index 19d69eb623..1502830978 100644 --- a/slirp/slirp.c +++ b/slirp/slirp.c @@ -246,6 +246,9 @@ void slirp_cleanup(Slirp *slirp) unregister_savevm(NULL, "slirp", slirp); + ip_cleanup(slirp); + m_cleanup(slirp); + g_free(slirp->tftp_prefix); g_free(slirp->bootp_filename); g_free(slirp); @@ -581,12 +584,7 @@ void slirp_select_poll(fd_set *readfds, fd_set *writefds, fd_set *xfds, } } - /* - * See if we can start outputting - */ - if (slirp->if_queued) { - if_start(slirp); - } + if_start(slirp); } /* clear global file descriptor sets. |