All of lore.kernel.org
 help / color / mirror / Atom feed
* [Intel-wired-lan] [PATCH 1/3] ethtool: correct display of VF when showing vf/queue filters
@ 2017-11-10 18:55 Jacob Keller
  2017-11-10 18:55 ` [Intel-wired-lan] [PATCH 2/3] ethtool: show vf and queue in the help for -N Jacob Keller
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Jacob Keller @ 2017-11-10 18:55 UTC (permalink / raw)
  To: intel-wired-lan

The original code that implemented this accidentally had an inverted
check, so it would never show the VF number properly.

Fix this code to correctly display the VF number when we have one.

Fixes: 36ee712b0fbc ("ethtool: support queue and VF fields for rxclass filters", 2017-03-23)
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
---
 rxclass.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/rxclass.c b/rxclass.c
index ebc3e1a59fb3..144c8e5e76be 100644
--- a/rxclass.c
+++ b/rxclass.c
@@ -252,11 +252,11 @@ static void rxclass_print_nfc_rule(struct ethtool_rx_flow_spec *fsp)
 		u64 queue = ethtool_get_flow_spec_ring(fsp->ring_cookie);
 
 		if (vf)
-			fprintf(stdout, "\tAction: Direct to queue %llu\n",
-				queue);
-		else
 			fprintf(stdout, "\tAction: Direct to VF %llu queue %llu\n",
 				vf, queue);
+		else
+			fprintf(stdout, "\tAction: Direct to queue %llu\n",
+				queue);
 	} else {
 		fprintf(stdout, "\tAction: Drop\n");
 	}
-- 
2.15.0


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

* [Intel-wired-lan] [PATCH 2/3] ethtool: show vf and queue in the help for -N
  2017-11-10 18:55 [Intel-wired-lan] [PATCH 1/3] ethtool: correct display of VF when showing vf/queue filters Jacob Keller
@ 2017-11-10 18:55 ` Jacob Keller
  2017-11-16 18:09   ` Bowers, AndrewX
  2017-11-10 18:55 ` [Intel-wired-lan] [PATCH 3/3] ethtool: correct VF index values for the ring_cookie parameter Jacob Keller
  2017-11-16 18:09 ` [Intel-wired-lan] [PATCH 1/3] ethtool: correct display of VF when showing vf/queue filters Bowers, AndrewX
  2 siblings, 1 reply; 6+ messages in thread
From: Jacob Keller @ 2017-11-10 18:55 UTC (permalink / raw)
  To: intel-wired-lan

Show that you can use vf and queue instead of action in the help output,
and not only in the manual page.

Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
---
 ethtool.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ethtool.c b/ethtool.c
index 1a2b7ccd2edf..4149bb4eeda2 100644
--- a/ethtool.c
+++ b/ethtool.c
@@ -4856,7 +4856,7 @@ static const struct option {
 	  "			[ vlan %x [m %x] ]\n"
 	  "			[ user-def %x [m %x] ]\n"
 	  "			[ dst-mac %x:%x:%x:%x:%x:%x [m %x:%x:%x:%x:%x:%x] ]\n"
-	  "			[ action %d ]\n"
+	  "			[ action %d ] | [ vf %d queue %d ]\n"
 	  "			[ loc %d]] |\n"
 	  "		delete %d\n" },
 	{ "-T|--show-time-stamping", 1, do_tsinfo,
-- 
2.15.0


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

* [Intel-wired-lan] [PATCH 3/3] ethtool: correct VF index values for the ring_cookie parameter
  2017-11-10 18:55 [Intel-wired-lan] [PATCH 1/3] ethtool: correct display of VF when showing vf/queue filters Jacob Keller
  2017-11-10 18:55 ` [Intel-wired-lan] [PATCH 2/3] ethtool: show vf and queue in the help for -N Jacob Keller
@ 2017-11-10 18:55 ` Jacob Keller
  2017-11-16 18:10   ` Bowers, AndrewX
  2017-11-16 18:09 ` [Intel-wired-lan] [PATCH 1/3] ethtool: correct display of VF when showing vf/queue filters Bowers, AndrewX
  2 siblings, 1 reply; 6+ messages in thread
From: Jacob Keller @ 2017-11-10 18:55 UTC (permalink / raw)
  To: intel-wired-lan

Instead of relying on the input being offset by 1, instead adjust the
"vf" input value by 1 so that it correctly targets the VF the user
expects. Additionally, update the displayed output to show the correct
VF number.

Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
---

This is the way the VF parameter should have worked from the beginning,
but unfortunately I did not code it as such. It may be considered a
functional change (since we already supported the vf parameter with the
offset not handled properly). I would consider this a bug fix, but it
might be considered a behavior change....

 ethtool.8.in |  3 +--
 rxclass.c    | 14 +++++++++++++-
 2 files changed, 14 insertions(+), 3 deletions(-)

diff --git a/ethtool.8.in b/ethtool.8.in
index 6ad30650eb5b..76f86e6b6827 100644
--- a/ethtool.8.in
+++ b/ethtool.8.in
@@ -839,8 +839,7 @@ lB	l.
 .TE
 .TP
 .BI vf \ N
-Specifies the Virtual Function the filter applies to. A value of 0 indicates
-the PF, and thus the VF index is offset by 1. Not compatible with action.
+Specifies the Virtual Function the filter applies to. Not compatible with action.
 .TP
 .BI queue \ N
 Specifies the Rx queue to send packets to. Not compatible with action.
diff --git a/rxclass.c b/rxclass.c
index 144c8e5e76be..e05031b6a23f 100644
--- a/rxclass.c
+++ b/rxclass.c
@@ -251,9 +251,14 @@ static void rxclass_print_nfc_rule(struct ethtool_rx_flow_spec *fsp)
 		u64 vf = ethtool_get_flow_spec_ring_vf(fsp->ring_cookie);
 		u64 queue = ethtool_get_flow_spec_ring(fsp->ring_cookie);
 
+		/* A value of zero indicates that this rule targeted the main
+		 * function. A positive value indicates which virtual function
+		 * was targeted, so we'll subtract 1 in order to show the
+		 * correct VF index
+		 */
 		if (vf)
 			fprintf(stdout, "\tAction: Direct to VF %llu queue %llu\n",
-				vf, queue);
+				vf - 1, queue);
 		else
 			fprintf(stdout, "\tAction: Direct to queue %llu\n",
 				queue);
@@ -1047,6 +1052,13 @@ static int rxclass_get_val(char *str, unsigned char *p, u32 *flags,
 		err = rxclass_get_ulong(str, &val, 8);
 		if (err)
 			return -1;
+
+		/* The ring_cookie uses 0 to indicate the rule targets the
+		 * main function, so add 1 to the value in order to target the
+		 * correct virtual function.
+		 */
+		val++;
+
 		*(u64 *)&p[opt->offset] &= ~ETHTOOL_RX_FLOW_SPEC_RING_VF;
 		*(u64 *)&p[opt->offset] = (u64)val << ETHTOOL_RX_FLOW_SPEC_RING_VF_OFF;
 		break;
-- 
2.15.0


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

* [Intel-wired-lan] [PATCH 1/3] ethtool: correct display of VF when showing vf/queue filters
  2017-11-10 18:55 [Intel-wired-lan] [PATCH 1/3] ethtool: correct display of VF when showing vf/queue filters Jacob Keller
  2017-11-10 18:55 ` [Intel-wired-lan] [PATCH 2/3] ethtool: show vf and queue in the help for -N Jacob Keller
  2017-11-10 18:55 ` [Intel-wired-lan] [PATCH 3/3] ethtool: correct VF index values for the ring_cookie parameter Jacob Keller
@ 2017-11-16 18:09 ` Bowers, AndrewX
  2 siblings, 0 replies; 6+ messages in thread
From: Bowers, AndrewX @ 2017-11-16 18:09 UTC (permalink / raw)
  To: intel-wired-lan

> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at osuosl.org] On
> Behalf Of Jacob Keller
> Sent: Friday, November 10, 2017 10:56 AM
> To: Intel Wired LAN <intel-wired-lan@lists.osuosl.org>
> Subject: [Intel-wired-lan] [PATCH 1/3] ethtool: correct display of VF when
> showing vf/queue filters
> 
> The original code that implemented this accidentally had an inverted check,
> so it would never show the VF number properly.
> 
> Fix this code to correctly display the VF number when we have one.
> 
> Fixes: 36ee712b0fbc ("ethtool: support queue and VF fields for rxclass
> filters", 2017-03-23)
> Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
> ---
>  rxclass.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)

Tested-by: Andrew Bowers <andrewx.bowers@intel.com>



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

* [Intel-wired-lan] [PATCH 2/3] ethtool: show vf and queue in the help for -N
  2017-11-10 18:55 ` [Intel-wired-lan] [PATCH 2/3] ethtool: show vf and queue in the help for -N Jacob Keller
@ 2017-11-16 18:09   ` Bowers, AndrewX
  0 siblings, 0 replies; 6+ messages in thread
From: Bowers, AndrewX @ 2017-11-16 18:09 UTC (permalink / raw)
  To: intel-wired-lan

> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at osuosl.org] On
> Behalf Of Jacob Keller
> Sent: Friday, November 10, 2017 10:56 AM
> To: Intel Wired LAN <intel-wired-lan@lists.osuosl.org>
> Subject: [Intel-wired-lan] [PATCH 2/3] ethtool: show vf and queue in the
> help for -N
> 
> Show that you can use vf and queue instead of action in the help output, and
> not only in the manual page.
> 
> Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
> ---
>  ethtool.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Tested-by: Andrew Bowers <andrewx.bowers@intel.com>



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

* [Intel-wired-lan] [PATCH 3/3] ethtool: correct VF index values for the ring_cookie parameter
  2017-11-10 18:55 ` [Intel-wired-lan] [PATCH 3/3] ethtool: correct VF index values for the ring_cookie parameter Jacob Keller
@ 2017-11-16 18:10   ` Bowers, AndrewX
  0 siblings, 0 replies; 6+ messages in thread
From: Bowers, AndrewX @ 2017-11-16 18:10 UTC (permalink / raw)
  To: intel-wired-lan

> -----Original Message-----
> From: Intel-wired-lan [mailto:intel-wired-lan-bounces at osuosl.org] On
> Behalf Of Jacob Keller
> Sent: Friday, November 10, 2017 10:56 AM
> To: Intel Wired LAN <intel-wired-lan@lists.osuosl.org>
> Subject: [Intel-wired-lan] [PATCH 3/3] ethtool: correct VF index values for
> the ring_cookie parameter
> 
> Instead of relying on the input being offset by 1, instead adjust the "vf" input
> value by 1 so that it correctly targets the VF the user expects. Additionally,
> update the displayed output to show the correct VF number.
> 
> Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
> ---
> 
> This is the way the VF parameter should have worked from the beginning,
> but unfortunately I did not code it as such. It may be considered a functional
> change (since we already supported the vf parameter with the offset not
> handled properly). I would consider this a bug fix, but it might be considered
> a behavior change....
> 
>  ethtool.8.in |  3 +--
>  rxclass.c    | 14 +++++++++++++-
>  2 files changed, 14 insertions(+), 3 deletions(-)

Tested-by: Andrew Bowers <andrewx.bowers@intel.com>



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

end of thread, other threads:[~2017-11-16 18:10 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-10 18:55 [Intel-wired-lan] [PATCH 1/3] ethtool: correct display of VF when showing vf/queue filters Jacob Keller
2017-11-10 18:55 ` [Intel-wired-lan] [PATCH 2/3] ethtool: show vf and queue in the help for -N Jacob Keller
2017-11-16 18:09   ` Bowers, AndrewX
2017-11-10 18:55 ` [Intel-wired-lan] [PATCH 3/3] ethtool: correct VF index values for the ring_cookie parameter Jacob Keller
2017-11-16 18:10   ` Bowers, AndrewX
2017-11-16 18:09 ` [Intel-wired-lan] [PATCH 1/3] ethtool: correct display of VF when showing vf/queue filters Bowers, AndrewX

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.