diff mbox series

[net-next,v6,08/12] flow_offload: add wake-up-on-lan and queue to flow_action

Message ID 20181214181205.28812-9-pablo@netfilter.org
State Changes Requested, archived
Delegated to: David Miller
Headers show
Series add flow_rule infrastructure | expand

Commit Message

Pablo Neira Ayuso Dec. 14, 2018, 6:12 p.m. UTC
These actions need to be added to support the ethtool_rx_flow interface.
The queue action includes a field to specify the RSS context, that is
set via FLOW_RSS flow type flag and the rss_context field in struct
ethtool_rxnfc, plus the corresponding queue index. FLOW_RSS implies that
rss_context is non-zero, therefore, queue.ctx == 0 means that FLOW_RSS
was not set. Also add a field to store the vf index which is stored in
the ethtool_rxnfc ring_cookie field.

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
---
v6: add vf field, which is mapped to ring_cookie, that is needed by qede
    driver.

 include/net/flow_offload.h | 7 +++++++
 1 file changed, 7 insertions(+)

Comments

Jiri Pirko Dec. 14, 2018, 7:17 p.m. UTC | #1
Fri, Dec 14, 2018 at 07:12:01PM CET, pablo@netfilter.org wrote:
>These actions need to be added to support the ethtool_rx_flow interface.
>The queue action includes a field to specify the RSS context, that is
>set via FLOW_RSS flow type flag and the rss_context field in struct
>ethtool_rxnfc, plus the corresponding queue index. FLOW_RSS implies that
>rss_context is non-zero, therefore, queue.ctx == 0 means that FLOW_RSS
>was not set. Also add a field to store the vf index which is stored in
>the ethtool_rxnfc ring_cookie field.
>
>Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>

Acked-by: Jiri Pirko <jiri@mellanox.com>
Florian Fainelli Dec. 15, 2018, 6:55 p.m. UTC | #2
Le 12/14/18 à 10:12 AM, Pablo Neira Ayuso a écrit :
> These actions need to be added to support the ethtool_rx_flow interface.
> The queue action includes a field to specify the RSS context, that is
> set via FLOW_RSS flow type flag and the rss_context field in struct
> ethtool_rxnfc, plus the corresponding queue index. FLOW_RSS implies that
> rss_context is non-zero, therefore, queue.ctx == 0 means that FLOW_RSS
> was not set. Also add a field to store the vf index which is stored in
> the ethtool_rxnfc ring_cookie field.
> 
> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>

Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
diff mbox series

Patch

diff --git a/include/net/flow_offload.h b/include/net/flow_offload.h
index f9ce39992dbd..23166caa0da5 100644
--- a/include/net/flow_offload.h
+++ b/include/net/flow_offload.h
@@ -116,6 +116,8 @@  enum flow_action_id {
 	FLOW_ACTION_ADD,
 	FLOW_ACTION_CSUM,
 	FLOW_ACTION_MARK,
+	FLOW_ACTION_WAKE,
+	FLOW_ACTION_QUEUE,
 };
 
 /* This is mirroring enum pedit_header_type definition for easy mapping between
@@ -150,6 +152,11 @@  struct flow_action_entry {
 		const struct ip_tunnel_info *tunnel;	/* FLOW_ACTION_TUNNEL_ENCAP */
 		u32			csum_flags;	/* FLOW_ACTION_CSUM */
 		u32			mark;		/* FLOW_ACTION_MARK */
+		struct {				/* FLOW_ACTION_QUEUE */
+			u32		ctx;
+			u32		index;
+			u8		vf;
+		} queue;
 	};
 };