lisp: Use IP addresses rather than flow on hash failure.
authorJesse Gross <jesse@nicira.com>
Tue, 10 Jun 2014 17:38:33 +0000 (10:38 -0700)
committerJesse Gross <jesse@nicira.com>
Fri, 13 Jun 2014 19:09:47 +0000 (12:09 -0700)
commit31125ebd8f9b946dc69baadb0f4b2043760e5f6e
treed64e7ff895d536c790dacb49f58cb6042d812b55
parentb96986ed11001494542a043e5dcc3469463a1f71
lisp: Use IP addresses rather than flow on hash failure.

When calculating the source port for the UDP header, LISP primarily
uses skb_get_hash() but needs a backup in case this fails. The
current backup is a hash of the entire flow key but this includes
many fields that probably would not be considered to be part of a
flow in many situations. It assumes that all fields, including those
not used, are zeroed out which will soon not be the case.

This switches to using a hash of the IP addresses instead, which
solves both problems. These should always be present since LISP
encapsulates L3 packets.

Signed-off-by: Jesse Gross <jesse@nicira.com>
Acked-by: Thomas Graf <tgraf@suug.ch>
datapath/vport-lisp.c