From: Jan Kiszka <jan.kiszka@siemens.com>
To: Filip Navara <filip.navara@gmail.com>
Cc: Mark McLoughlin <markmc@redhat.com>,
Anthony Liguori <aliguori@us.ibm.com>,
qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 25/41] slirp: Make IP packet ID consistent
Date: Wed, 24 Jun 2009 16:48:09 +0200 [thread overview]
Message-ID: <4A423CA9.10109@siemens.com> (raw)
In-Reply-To: <5b31733c0906240734t3ae09c99u792e074489500f59@mail.gmail.com>
Filip Navara wrote:
> On Wed, Jun 24, 2009 at 2:42 PM, Jan Kiszka<jan.kiszka@siemens.com> wrote:
>> Currently, ip_id is always initialized to 0 on slirp startup (despite
>> the broken attempt to derive it from the clock). This is good for
>> reproducibility. But it is not preserved across save/restore. This patch
>> therefore drops the dead initialization code from ip_init and introduces
>> ip_id to the persistent slirp state.
>>
>> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
>> ---
>>
>> slirp/ip_input.c | 1 -
>> slirp/slirp.c | 8 +++++++-
>> 2 files changed, 7 insertions(+), 2 deletions(-)
>>
>> diff --git a/slirp/ip_input.c b/slirp/ip_input.c
>> index 0356eb5..b07d3d5 100644
>> --- a/slirp/ip_input.c
>> +++ b/slirp/ip_input.c
>> @@ -59,7 +59,6 @@ void
>> ip_init(void)
>> {
>> ipq.ip_link.next = ipq.ip_link.prev = &ipq.ip_link;
>> - ip_id = tt.tv_sec & 0xffff;
>
> You removed the ip_id initialization and now it's never initialized in
> the code. That sounds wrong.
Thanks for having a look! All this slirp code is really hairy and no fun
to dig through.
But now to your remark: That removal is in fact not changing the
behavior. ip_id is also initialized to 0 afterwards. To understand this
one has to track the messy use of 'tt' across slirp. It is in fact
carrying the time at some point (when select_fill is invoked), but not
yet on ip_init.
I was thinking about fixing the above initialization to actually take
the current time and derive ip_id, but then I thought it might be better
to keep this for network traffic reproducibility across qemu starts.
Jan
--
Siemens AG, Corporate Technology, CT SE 2
Corporate Competence Center Embedded Linux
next prev parent reply other threads:[~2009-06-24 14:48 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-24 12:42 [Qemu-devel] [PATCH 00/41] Slirp Fixes and Enhancements - Reloaded Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 01/41] slirp: Drop redundant lines from udp_input Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 04/41] Introduce get_next_param_value Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 02/41] slirp: Refactor tcp_ctl Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 06/41] slirp: Rework internal configuration Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 09/41] slirp: Rework monitor commands for host forwarding Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 05/41] slirp: Move smb, redir, tftp and bootp parameters and -net channel Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 08/41] slirp: Fix port comparision in slirp_remove_hostfwd Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 07/41] slirp: Rework external configuration interface Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 10/41] slirp: Bind support for host forwarding rules Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 03/41] Revert "User networking: Show active connections" Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 14/41] slirp: Mark sockets of incoming TCP connections Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 13/41] slirp: Do not allow to remove non-hostfwd sockets Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 12/41] slirp: Explicitely mark host-forwarding sockets Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 20/41] slirp: tftp: Cleanup tftp_prefix check Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 18/41] slirp: Cleanup and basic reanimation of debug code Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 15/41] slirp: Add info usernet for dumping connection states Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 16/41] slirp: Drop dead code Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 19/41] slirp: Drop unused icmp_var.h Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 17/41] slirp: Drop statistic code Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 11/41] slirp: Prepare for persistent socket state flags Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 30/41] slirp: Drop link_up checks from if_output and slirp_socket_can_recv Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 27/41] slirp: Kill slirp_is_inited Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 26/41] slirp: Clean up updtime Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 21/41] slirp: tftp: Clean up tftp_send_error Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 22/41] slirp: tftp: Refactor tftp_handle_rrq Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 25/41] slirp: Make IP packet ID consistent Jan Kiszka
2009-06-24 14:34 ` Filip Navara
2009-06-24 14:48 ` Jan Kiszka [this message]
2009-06-24 15:04 ` Filip Navara
2009-06-24 12:42 ` [Qemu-devel] [PATCH 29/41] slirp: Clean up timeout handling around slirp_select_fill/poll Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 23/41] slirp: tftp: Rework filename handling Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 24/41] slirp: Factor out one-time initialization Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 28/41] slirp: Drop redundant checks from slirp_output Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 34/41] slirp: Enable multiple instances Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 33/41] slirp: Allocate/free stack instance dynamically Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 31/41] slirp: Factor out internal state structure Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 37/41] slirp: Improve error handling in slirp_smb Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 38/41] slirp: Enable multi-instance support for the smb service Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 36/41] slirp: Use shell to erase smb directory Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 32/41] slirp: Use internal state in interface Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 39/41] net: Provide VLAN client lookup helper Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 35/41] slirp: Save/restore bootp client states Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 41/41] slirp: Basic VLAN client info_str Jan Kiszka
2009-06-24 12:42 ` [Qemu-devel] [PATCH 40/41] slirp: Make hostfwd_add/remove multi-instance-aware Jan Kiszka
2009-06-24 12:49 ` [Qemu-devel] Re: [PATCH 00/41] Slirp Fixes and Enhancements - Reloaded Anthony Liguori
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=4A423CA9.10109@siemens.com \
--to=jan.kiszka@siemens.com \
--cc=aliguori@us.ibm.com \
--cc=filip.navara@gmail.com \
--cc=markmc@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.