All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCHv6 net-next 0/3] net: erspan: add support for openvswitch
@ 2018-01-25 21:20 William Tu
  2018-01-25 21:20 ` [PATCHv6 net-next 1/3] net: erspan: use bitfield instead of mask and offset William Tu
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: William Tu @ 2018-01-25 21:20 UTC (permalink / raw)
  To: netdev; +Cc: pshelar

The first patch refactors the erspan header definitions. 
Originally, the erspan fields are defined as a group into a __be16 field,
and use mask and offset to access each field.  This is more costly due to
calling ntohs/htons and error-prone.  The first patch changes it to use
bitfields.  The second patch creates erspan.h in UAPI and move the definition
'struct erspan_metadata' to it for later openvswitch to use.  The final patch
introduces the new OVS tunnel key attribute, OVS_TUNNEL_KEY_ATTR_ERSPAN_OPTS,
to program both v1 and v2 erspan tunnel for openvswitch.

William Tu (3):
  net: erspan: use bitfield instead of mask and offset
  net: erspan: create erspan metadata uapi header
  openvswitch: add erspan version I and II support

 include/net/erspan.h             | 123 +++++++++++++++++++++++++--------------
 include/uapi/linux/erspan.h      |  52 +++++++++++++++++
 include/uapi/linux/openvswitch.h |   1 +
 net/ipv4/ip_gre.c                |  38 +++++-------
 net/ipv6/ip6_gre.c               |  36 +++++-------
 net/openvswitch/flow_netlink.c   |  52 ++++++++++++++++-
 6 files changed, 209 insertions(+), 93 deletions(-)
 create mode 100644 include/uapi/linux/erspan.h
---
v5->v6
  move field 'version' to the begining of the struct for easy expansion later.
  remove redundant erspan validation function
  create erspan.h in uapi

v4->v5
  rather than passing individual members of erspan_metadata,
  just pass the whole binary structure between kernel and userspace,
  suggested by Pravin.

v3->v4
  change from be32 to u32 for OVS_ERSPAN_OPT_IDX, suggested by Jiri Benc.

v2->v3
  revert the "openvswitch: Add erspan tunnel support." commit ceaa001a170e.
  redesign the OVS_TUNNEL_KEY_ATTR_ERSPAN_OPTS as nested attribute

v1->v2
  Fix compatibility issue suggested by Pravin.


-- 
2.7.4

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2018-01-26  2:40 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-01-25 21:20 [PATCHv6 net-next 0/3] net: erspan: add support for openvswitch William Tu
2018-01-25 21:20 ` [PATCHv6 net-next 1/3] net: erspan: use bitfield instead of mask and offset William Tu
2018-01-26  2:35   ` Pravin Shelar
2018-01-25 21:20 ` [PATCHv6 net-next 2/3] net: erspan: create erspan metadata uapi header William Tu
2018-01-26  2:35   ` Pravin Shelar
2018-01-25 21:20 ` [PATCHv6 net-next 3/3] openvswitch: add erspan version I and II support William Tu
2018-01-26  2:35   ` Pravin Shelar
2018-01-26  2:40 ` [PATCHv6 net-next 0/3] net: erspan: add support for openvswitch David Miller

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.