[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220718121813.159102-1-marcin.szycik@linux.intel.com>
Date: Mon, 18 Jul 2022 14:18:09 +0200
From: Marcin Szycik <marcin.szycik@...ux.intel.com>
To: netdev@...r.kernel.org
Cc: anthony.l.nguyen@...el.com, davem@...emloft.net,
xiyou.wangcong@...il.com, jesse.brandeburg@...el.com,
gustavoars@...nel.org, baowen.zheng@...igine.com,
boris.sukholitko@...adcom.com, edumazet@...gle.com,
kuba@...nel.org, jhs@...atatu.com, jiri@...nulli.us,
kurt@...utronix.de, pablo@...filter.org, pabeni@...hat.com,
paulb@...dia.com, simon.horman@...igine.com,
komachi.yoshiki@...il.com, zhangkaiheb@....com,
intel-wired-lan@...ts.osuosl.org,
michal.swiatkowski@...ux.intel.com, wojciech.drewek@...el.com,
alexandr.lobakin@...el.com, gnault@...hat.com,
mostrows@...akeasy.net, paulus@...ba.org,
Marcin Szycik <marcin.szycik@...ux.intel.com>
Subject: [RFC PATCH net-next v6 0/4] ice: PPPoE offload support
Add support for dissecting PPPoE and PPP-specific fields in flow dissector:
PPPoE session id and PPP protocol type. Add support for those fields in
tc-flower and support offloading PPPoE. Finally, add support for hardware
offload of PPPoE packets in switchdev mode in ice driver.
Example filter:
tc filter add dev $PF1 ingress protocol ppp_ses prio 1 flower pppoe_sid \
1234 ppp_proto ip skip_sw action mirred egress redirect dev $VF1_PR
Changes in iproute2 are required to use the new fields (will be submitted
soon).
ICE COMMS DDP package is required to create a filter in ice.
v6:
* make check for ppp proto more generic
* fix remaining byte order issues
v5: fix endianness when processing compressed protocols
v4:
* PPPoE header validation
* added MPLS support
* added support for compressed PPP protocol field
* flow_dissector_key_pppoe::session_id stored in __be16
* new field: flow_dissector_key_pppoe::type
* always add an ethtype lookup if PPP/PPPoE options are provided (to
prevent setting incorrect ethtype)
* rebase
v3:
* revert byte order changes in is_ppp_proto_supported from previous
version
* add kernel-doc for is_ppp_proto_supported
* add more CC
v2: cosmetic changes
Marcin Szycik (1):
ice: Add support for PPPoE hardware offload
Wojciech Drewek (3):
flow_dissector: Add PPPoE dissectors
net/sched: flower: Add PPPoE filter
flow_offload: Introduce flow_match_pppoe
drivers/net/ethernet/intel/ice/ice.h | 1 +
.../net/ethernet/intel/ice/ice_flex_pipe.c | 5 +-
.../ethernet/intel/ice/ice_protocol_type.h | 11 ++
drivers/net/ethernet/intel/ice/ice_switch.c | 165 ++++++++++++++++++
drivers/net/ethernet/intel/ice/ice_tc_lib.c | 71 +++++++-
drivers/net/ethernet/intel/ice/ice_tc_lib.h | 8 +
include/linux/ppp_defs.h | 14 ++
include/net/flow_dissector.h | 13 ++
include/net/flow_offload.h | 6 +
include/uapi/linux/pkt_cls.h | 3 +
net/core/flow_dissector.c | 53 +++++-
net/core/flow_offload.c | 7 +
net/sched/cls_flower.c | 64 +++++++
13 files changed, 412 insertions(+), 9 deletions(-)
--
2.35.1
Powered by blists - more mailing lists