[ovs-dev] [PATCH] datapath-windows: Zero initialize Conntrack-ICMP entry

Alin Serdean aserdean at cloudbasesolutions.com
Thu Jun 15 23:18:12 UTC 2017


Mind if we backport this to 2.7 also?

Acked-by: Alin Gabriel Serdean <aserdean at cloudbasesolutions.com>

> -----Original Message-----
> From: ovs-dev-bounces at openvswitch.org [mailto:ovs-dev-
> bounces at openvswitch.org] On Behalf Of Shashank Ram
> Sent: Friday, June 16, 2017 12:31 AM
> To: Sairam Venugopal <vsairam at vmware.com>; dev at openvswitch.org
> Subject: Re: [ovs-dev] [PATCH] datapath-windows: Zero initialize Conntrack-
> ICMP entry
> 
> Looks good, one minor clarification needed (inline).
> ________________________________________
> From: ovs-dev-bounces at openvswitch.org <ovs-dev-
> bounces at openvswitch.org> on behalf of Sairam Venugopal
> <vsairam at vmware.com>
> Sent: Thursday, June 15, 2017 2:07 PM
> To: dev at openvswitch.org
> Subject: [ovs-dev] [PATCH] datapath-windows: Zero initialize Conntrack-
> ICMP     entry
> 
> Set conntrack-icmp entry to {0}. Add some compile time asserts to ensure
> that conn_* struct's first member is OVS_CT_ENTRY.
> 
> >>> It would help to mention why this is a requirement.
> 
> Signed-off-by: Sairam Venugopal <vsairam at vmware.com>
> ---
>  datapath-windows/ovsext/Conntrack-icmp.c  | 3 ++-  datapath-
> windows/ovsext/Conntrack-other.c | 1 +
>  datapath-windows/ovsext/Conntrack-tcp.c   | 1 +
>  3 files changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/datapath-windows/ovsext/Conntrack-icmp.c b/datapath-
> windows/ovsext/Conntrack-icmp.c
> index b1b6043..4da0665 100644
> --- a/datapath-windows/ovsext/Conntrack-icmp.c
> +++ b/datapath-windows/ovsext/Conntrack-icmp.c
> @@ -27,6 +27,7 @@ struct conn_icmp {
>      struct OVS_CT_ENTRY up;
>      enum icmp_state state;
>  };
> +C_ASSERT(offsetof(struct conn_icmp, up) == 0);
> 
>  static const enum ct_timeout icmp_timeouts[] = {
>      [ICMPS_FIRST] = 60 * CT_INTERVAL_SEC, @@ -78,7 +79,7 @@
> OvsConntrackCreateIcmpEntry(UINT64 now)
>      if (!conn) {
>          return NULL;
>      }
> -
> +    conn->up = (OVS_CT_ENTRY) {0};
>      conn->state = ICMPS_FIRST;
> 
>      OvsConntrackUpdateExpiration(&conn->up, now, diff --git a/datapath-
> windows/ovsext/Conntrack-other.c b/datapath-
> windows/ovsext/Conntrack-other.c
> index 6c68ba8..962cc8a 100644
> --- a/datapath-windows/ovsext/Conntrack-other.c
> +++ b/datapath-windows/ovsext/Conntrack-other.c
> @@ -27,6 +27,7 @@ struct conn_other {
>      struct OVS_CT_ENTRY up;
>      enum other_state state;
>  };
> +C_ASSERT(offsetof(struct conn_other, up) == 0);
> 
>  static const long long other_timeouts[] = {
>      [OTHERS_FIRST] = 60 * CT_INTERVAL_SEC, diff --git a/datapath-
> windows/ovsext/Conntrack-tcp.c b/datapath-windows/ovsext/Conntrack-
> tcp.c
> index f533b93..f8e85a2 100644
> --- a/datapath-windows/ovsext/Conntrack-tcp.c
> +++ b/datapath-windows/ovsext/Conntrack-tcp.c
> @@ -51,6 +51,7 @@ struct conn_tcp {
>      struct OVS_CT_ENTRY up;
>      struct tcp_peer peer[2];
>  };
> +C_ASSERT(offsetof(struct conn_tcp, up) == 0);
> 
>  enum {
>      TCPOPT_EOL,
> --
> 2.9.0.windows.1
> 
> _______________________________________________
> 
> Acked-by: Shashank Ram <rams at vmware.com>
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev


More information about the dev mailing list