Oops, that's my fault. Can you confirm that this patch solves the
problem?
https://patchwork.ozlabs.org/patch/775320/
On Tue, Jun 13, 2017 at 01:15:24PM +0000, Fischetti, Antonio wrote:
> Hi Darrell,
> it seems in lib/hash.h there's already a hash_finish() function for the
> Intrinsic mode where the 1st parm is a uint64_t:
> static inline uint32_t hash_finish(uint64_t hash, uint64_t final)
>
> so I'm getting some errors when building with CFLAGS="-O2 -march=native -g"
>
> lib/hash.h:180:24: error: conflicting types for 'hash_finish'
> static inline uint32_t hash_finish(uint64_t hash, uint64_t final)
>
> lib/hash.h:95:24: note: previous declaration of 'hash_finish' was here
> static inline uint32_t hash_finish(uint32_t hash, uint32_t final);
>
>
> Antonio
>
> > -----Original Message-----
> > From: [email protected] [mailto:ovs-dev-
> > [email protected]] On Behalf Of Darrell Ball
> > Sent: Friday, June 9, 2017 11:31 PM
> > To: [email protected]
> > Subject: [ovs-dev] [patch_v2 3/3] conntrack: Add hash_finish() to
> > conn_key_hash().
> >
> > The function conn_key_hash() is updated to include
> > a call to hash_finish() and also to make use of a
> > new hash abstraction - ct_endpoint_hash_add().
> >
> > Fixes: a489b16854b5 ("conntrack: New userspace connection tracker.")
> > Signed-off-by: Darrell Ball <[email protected]>
> > ---
> > lib/conntrack.c | 10 +++-------
> > 1 file changed, 3 insertions(+), 7 deletions(-)
> >
> > diff --git a/lib/conntrack.c b/lib/conntrack.c
> > index 9584a0a..146edd7 100644
> > --- a/lib/conntrack.c
> > +++ b/lib/conntrack.c
> > @@ -1529,14 +1529,10 @@ static uint32_t
> > conn_key_hash(const struct conn_key *key, uint32_t basis)
> > {
> > uint32_t hsrc, hdst, hash;
> > - int i;
> >
> > hsrc = hdst = basis;
> > -
> > - for (i = 0; i < sizeof(key->src) / sizeof(uint32_t); i++) {
> > - hsrc = hash_add(hsrc, ((uint32_t *) &key->src)[i]);
> > - hdst = hash_add(hdst, ((uint32_t *) &key->dst)[i]);
> > - }
> > + hsrc = ct_endpoint_hash_add(hsrc, &key->src);
> > + hdst = ct_endpoint_hash_add(hdst, &key->dst);
> >
> > /* Even if source and destination are swapped the hash will be the
> > same. */
> > hash = hsrc ^ hdst;
> > @@ -1546,7 +1542,7 @@ conn_key_hash(const struct conn_key *key, uint32_t
> > basis)
> > (uint32_t *) (key + 1) - (uint32_t *) (&key->dst +
> > 1),
> > hash);
> >
> > - return hash;
> > + return hash_finish(hash, 0);
> > }
> >
> > static void
> > --
> > 1.9.1
> >
> > _______________________________________________
> > dev mailing list
> > [email protected]
> > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
> _______________________________________________
> dev mailing list
> [email protected]
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev