]> git.baikalelectronics.ru Git - kernel.git/commit
geneve: Unify LWT and netdev handling.
authorpravin shelar <pshelar@ovn.org>
Mon, 21 Nov 2016 19:02:58 +0000 (11:02 -0800)
committerDavid S. Miller <davem@davemloft.net>
Mon, 21 Nov 2016 19:05:49 +0000 (14:05 -0500)
commit25e13753220d01d1cf430c7228aaebae8288ec53
tree40e7a38c03c9834975ad6d42ed3f8d44f112f104
parent1e6874b8d1d77970f0fa13ab918c9301d6dde489
geneve: Unify LWT and netdev handling.

Current geneve implementation has two separate cases to handle.
1. netdev xmit
2. LWT xmit.

In case of netdev, geneve configuration is stored in various
struct geneve_dev members. For example geneve_addr, ttl, tos,
label, flags, dst_cache, etc. For LWT ip_tunnel_info is passed
to the device in ip_tunnel_info.

Following patch uses ip_tunnel_info struct to store almost all
of configuration of a geneve netdevice. This allows us to unify
most of geneve driver code around ip_tunnel_info struct.
This dramatically simplify geneve code, since it does not
need to handle two different configuration cases. Removes
duplicate code, single code path can handle either type
of geneve devices.

Signed-off-by: Pravin B Shelar <pshelar@ovn.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/geneve.c