|
From: | Jason Wang |
Subject: | Re: [Qemu-devel] [PATCH v2 2/3] filter-rewriter: fix memory leak for connection in connection_track_table |
Date: | Mon, 27 Feb 2017 17:05:48 +0800 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.7.0 |
On 2017年02月27日 14:53, Hailiang Zhang wrote:
I think the issue is that your code can not differ A from B.We have a parameter 'fin_ack_seq' recording the sequence of 'FIN=1,ACK=1,seq=w,ack=u+1' and if the ack value from the oppositeside is is 'w+1', we can consider this connection is closed, no ?
Let's see what happens, consider VM is doing active close (reuse the figure above):
(VM) Client: Server: ESTABLISHED| | | -> FIN=1,seq=u -> | handle_secondary(): fin_ack_seq = u tcp_state = TCPS_LAST_ACK FIN_WAIT_1 | | | <- ACK=1,seq=v,ack=u+1 <- | handle_primary(): fin_ack_seq = ack + 1 g_hash_table_remove() But we probably want it to be removed in TIME_WAIT_CLOSED. Thanks
[Prev in Thread] | Current Thread | [Next in Thread] |