]> git.proxmox.com Git - mirror_ovs.git/commit - lib/conntrack.c
conntrack: Fix ct-clean thread crash bug.
authorLily Huang <huanglili.huang@huawei.com>
Fri, 25 Aug 2017 20:39:00 +0000 (13:39 -0700)
committerDarrell Ball <dlu998@gmail.com>
Fri, 25 Aug 2017 21:12:01 +0000 (14:12 -0700)
commitd8c5a93bd1f763938ac7fe0fef61151d29f97e1b
tree16338953e5fdee24ad610c93c1dd27dc67c941e6
parentcd995c739a330dbcaee6433c08ecaad62791a56b
conntrack: Fix ct-clean thread crash bug.

Conn should be removed from the connection expiry list when
the connection tracker experiences NAT resource exhaustion
and the connection needing NAT mapping cannot get it.
If this is not done, the connection tracker can crash during
cleanup of expired connections by the clean thread.

This crash will be triggered when a established flow do ct(nat)
again, like
"ip,actions=ct(table=1)
 table=1,in_port=1,ip,actions=ct(commit,nat(dst=5.5.5.5)),2
 table=1,in_port=2,ip,ct_state=+est,actions=1
 table=1,in_port=1,ip,ct_state=+est,actions=2"

Fixes: bd5e81a0e596 ("Userspace Datapath: Add ALG infra and FTP.")
Signed-off-by: Lili Huang <huanglili.huang@huawei.com>
Signed-off-by: Darrell Ball <dlu998@gmail.com>
AUTHORS.rst
lib/conntrack.c