On 2/9/23 13:29, Ales Musil wrote:
> The inner header was not handled properly.
> Simplify the code which allows proper handling
> of the inner headers.
> 
> Reported-at: https://bugzilla.redhat.com/2137754
> Acked-by: Paolo Valerio <[email protected]>
> Signed-off-by: Ales Musil <[email protected]>
> ---
> v7: Rebase on top of current master.
>     Address comments from Paolo:
>     - Remove leftover log message.
>     - Fix one nit in test.
> v6: Rebase on top of current master.
>     Address comments from Paolo:
>     - Add test case for ICMP related in reply direction.
>     - Fix a mistake when the inner header was using
>     wrong nat_action.
> v5: Rebase on top of current master.
>     Address comments from Dumitru:
>     - Use explicit struct sizes for inner_l3 pointer.
>     - Use copied conn_key for reverse operation instead
>     of double reverse of the original one.
>     - Update the test case to use separate zone instead
>     of default one.
> ---
>  lib/conntrack.c         | 252 ++++++++++++++--------------------------
>  tests/system-traffic.at | 107 +++++++++++++++++
>  2 files changed, 196 insertions(+), 163 deletions(-)

Thanks!  Applied to master and 3.1.

Attempt to backport to 3.0 and earlier uncovered a memory
leak in dpctl flush-conntrack command that needs to be fixed
before we can backport this.  Otherwise, tests are failing
under asan:

==146651==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 36 byte(s) in 1 object(s) allocated from:
    #0 0x558d2fc2bc66 in __interceptor_realloc 
(/root/ovs/vswitchd/ovs-vswitchd+0x1bbc66)
    #1 0x558d300525dc in xrealloc__ /root/ovs/lib/util.c:147:9
    #2 0x558d300525dc in xrealloc /root/ovs/lib/util.c:179:12
    #3 0x558d2fe0993f in ds_reserve /root/ovs/lib/dynamic-string.c:63:22
    #4 0x558d2fe0993f in ds_put_format_valist 
/root/ovs/lib/dynamic-string.c:164:9
    #5 0x558d2fe096b8 in ds_put_format /root/ovs/lib/dynamic-string.c:142:5
    #6 0x558d2fdb85a0 in ct_dpif_parse_tuple /root/ovs/lib/ct-dpif.c
    #7 0x558d3017e4a3 in dpctl_flush_conntrack /root/ovs/lib/dpctl.c:1717:17
    #8 0x558d301797a3 in dpctl_unixctl_handler /root/ovs/lib/dpctl.c:3035:17
    #9 0x558d30051328 in process_command /root/ovs/lib/unixctl.c:310:13
    #10 0x558d30051328 in run_connection /root/ovs/lib/unixctl.c:344:17
    #11 0x558d30051328 in unixctl_server_run /root/ovs/lib/unixctl.c:395:21
    #12 0x558d2fc866c9 in main /root/ovs/vswitchd/ovs-vswitchd.c:130:9
    #13 0x7fe855c2350f  (/lib/x86_64-linux-gnu/libc.so.6+0x2350f)

Could you take a look at this one?

Also, we don't have an OVS_DAEMONIZE macro on 2.17.

Best regards, Ilya Maximets.
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to