All the mail mirrored from lore.kernel.org
 help / color / mirror / Atom feed
* [patch net-next v3 0/2] selftests: netdevsim: add devlink paramstests
@ 2019-08-15 13:42 Jiri Pirko
  2019-08-15 13:42 ` [patch net-next v3 1/2] selftests: net: push jq workaround into separate helper Jiri Pirko
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Jiri Pirko @ 2019-08-15 13:42 UTC (permalink / raw
  To: netdev; +Cc: davem, jakub.kicinski, mlxsw

From: Jiri Pirko <jiri@mellanox.com>

The first patch is just a helper addition as a dependency of the actual
test in patch number two.

Jiri Pirko (2):
  selftests: net: push jq workaround into separate helper
  selftests: netdevsim: add devlink params tests

 .../drivers/net/netdevsim/devlink.sh          | 62 ++++++++++++++++++-
 tools/testing/selftests/net/forwarding/lib.sh | 19 ++++++
 .../selftests/net/forwarding/tc_common.sh     | 17 ++---
 3 files changed, 84 insertions(+), 14 deletions(-)

-- 
2.21.0


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

* [patch net-next v3 1/2] selftests: net: push jq workaround into separate helper
  2019-08-15 13:42 [patch net-next v3 0/2] selftests: netdevsim: add devlink paramstests Jiri Pirko
@ 2019-08-15 13:42 ` Jiri Pirko
  2019-08-15 13:42 ` [patch net-next v3 2/2] selftests: netdevsim: add devlink params tests Jiri Pirko
  2019-08-15 19:01 ` [patch net-next v3 0/2] selftests: netdevsim: add devlink paramstests David Miller
  2 siblings, 0 replies; 5+ messages in thread
From: Jiri Pirko @ 2019-08-15 13:42 UTC (permalink / raw
  To: netdev; +Cc: davem, jakub.kicinski, mlxsw

From: Jiri Pirko <jiri@mellanox.com>

Push the jq return value workaround code into a separate helper so it
could be used by the rest of the code.

Signed-off-by: Jiri Pirko <jiri@mellanox.com>
---
v2->v3:
-remove -e jq option and rather check for empty output and return error
v1->v2:
-new patch
---
 tools/testing/selftests/net/forwarding/lib.sh | 19 +++++++++++++++++++
 .../selftests/net/forwarding/tc_common.sh     | 17 ++++-------------
 2 files changed, 23 insertions(+), 13 deletions(-)

diff --git a/tools/testing/selftests/net/forwarding/lib.sh b/tools/testing/selftests/net/forwarding/lib.sh
index 9385dc971269..85c587a03c8a 100644
--- a/tools/testing/selftests/net/forwarding/lib.sh
+++ b/tools/testing/selftests/net/forwarding/lib.sh
@@ -250,6 +250,25 @@ setup_wait()
 	sleep $WAIT_TIME
 }
 
+cmd_jq()
+{
+	local cmd=$1
+	local jq_exp=$2
+	local ret
+	local output
+
+	output="$($cmd)"
+	# it the command fails, return error right away
+	ret=$?
+	if [[ $ret -ne 0 ]]; then
+		return $ret
+	fi
+	output=$(echo $output | jq -r "$jq_exp")
+	echo $output
+	# return success only in case of non-empty output
+	[ ! -z "$output" ]
+}
+
 lldpad_app_wait_set()
 {
 	local dev=$1; shift
diff --git a/tools/testing/selftests/net/forwarding/tc_common.sh b/tools/testing/selftests/net/forwarding/tc_common.sh
index 9d3b64a2a264..315e934358d4 100644
--- a/tools/testing/selftests/net/forwarding/tc_common.sh
+++ b/tools/testing/selftests/net/forwarding/tc_common.sh
@@ -8,18 +8,9 @@ tc_check_packets()
 	local id=$1
 	local handle=$2
 	local count=$3
-	local ret
 
-	output="$(tc -j -s filter show $id)"
-	# workaround the jq bug which causes jq to return 0 in case input is ""
-	ret=$?
-	if [[ $ret -ne 0 ]]; then
-		return $ret
-	fi
-	echo $output | \
-		jq -e ".[] \
-		| select(.options.handle == $handle) \
-		| select(.options.actions[0].stats.packets == $count)" \
-		&> /dev/null
-	return $?
+	cmd_jq "tc -j -s filter show $id" \
+	       ".[] | select(.options.handle == $handle) | \
+	              select(.options.actions[0].stats.packets == $count)" \
+	       &> /dev/null
 }
-- 
2.21.0


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

* [patch net-next v3 2/2] selftests: netdevsim: add devlink params tests
  2019-08-15 13:42 [patch net-next v3 0/2] selftests: netdevsim: add devlink paramstests Jiri Pirko
  2019-08-15 13:42 ` [patch net-next v3 1/2] selftests: net: push jq workaround into separate helper Jiri Pirko
@ 2019-08-15 13:42 ` Jiri Pirko
  2019-08-15 17:33   ` Jakub Kicinski
  2019-08-15 19:01 ` [patch net-next v3 0/2] selftests: netdevsim: add devlink paramstests David Miller
  2 siblings, 1 reply; 5+ messages in thread
From: Jiri Pirko @ 2019-08-15 13:42 UTC (permalink / raw
  To: netdev; +Cc: davem, jakub.kicinski, mlxsw

From: Jiri Pirko <jiri@mellanox.com>

Test recently added netdevsim devlink param implementation.

Signed-off-by: Jiri Pirko <jiri@mellanox.com>
---
v1->v2:
-using cmd_jq helper
---
 .../drivers/net/netdevsim/devlink.sh          | 62 ++++++++++++++++++-
 1 file changed, 61 insertions(+), 1 deletion(-)

diff --git a/tools/testing/selftests/drivers/net/netdevsim/devlink.sh b/tools/testing/selftests/drivers/net/netdevsim/devlink.sh
index 9d8baf5d14b3..6828e9404460 100755
--- a/tools/testing/selftests/drivers/net/netdevsim/devlink.sh
+++ b/tools/testing/selftests/drivers/net/netdevsim/devlink.sh
@@ -3,7 +3,7 @@
 
 lib_dir=$(dirname $0)/../../../net/forwarding
 
-ALL_TESTS="fw_flash_test"
+ALL_TESTS="fw_flash_test params_test"
 NUM_NETIFS=0
 source $lib_dir/lib.sh
 
@@ -30,6 +30,66 @@ fw_flash_test()
 	log_test "fw flash test"
 }
 
+param_get()
+{
+	local name=$1
+
+	cmd_jq "devlink dev param show $DL_HANDLE name $name -j" \
+	       '.[][][].values[] | select(.cmode == "driverinit").value'
+}
+
+param_set()
+{
+	local name=$1
+	local value=$2
+
+	devlink dev param set $DL_HANDLE name $name cmode driverinit value $value
+}
+
+check_value()
+{
+	local name=$1
+	local phase_name=$2
+	local expected_param_value=$3
+	local expected_debugfs_value=$4
+	local value
+
+	value=$(param_get $name)
+	check_err $? "Failed to get $name param value"
+	[ "$value" == "$expected_param_value" ]
+	check_err $? "Unexpected $phase_name $name param value"
+	value=$(<$DEBUGFS_DIR/$name)
+	check_err $? "Failed to get $name debugfs value"
+	[ "$value" == "$expected_debugfs_value" ]
+	check_err $? "Unexpected $phase_name $name debugfs value"
+}
+
+params_test()
+{
+	RET=0
+
+	local max_macs
+	local test1
+
+	check_value max_macs initial 32 32
+	check_value test1 initial true Y
+
+	param_set max_macs 16
+	check_err $? "Failed to set max_macs param value"
+	param_set test1 false
+	check_err $? "Failed to set test1 param value"
+
+	check_value max_macs post-set 16 32
+	check_value test1 post-set false Y
+
+	devlink dev reload $DL_HANDLE
+
+	check_value max_macs post-reload 16 16
+	check_value test1 post-reload false N
+
+	log_test "params test"
+}
+
 setup_prepare()
 {
 	modprobe netdevsim
-- 
2.21.0


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

* Re: [patch net-next v3 2/2] selftests: netdevsim: add devlink params tests
  2019-08-15 13:42 ` [patch net-next v3 2/2] selftests: netdevsim: add devlink params tests Jiri Pirko
@ 2019-08-15 17:33   ` Jakub Kicinski
  0 siblings, 0 replies; 5+ messages in thread
From: Jakub Kicinski @ 2019-08-15 17:33 UTC (permalink / raw
  To: Jiri Pirko; +Cc: netdev, davem, mlxsw

On Thu, 15 Aug 2019 15:42:29 +0200, Jiri Pirko wrote:
> From: Jiri Pirko <jiri@mellanox.com>
> 
> Test recently added netdevsim devlink param implementation.
> 
> Signed-off-by: Jiri Pirko <jiri@mellanox.com>

Tested-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Acked-by: Jakub Kicinski <jakub.kicinski@netronome.com>

Thanks!

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

* Re: [patch net-next v3 0/2] selftests: netdevsim: add devlink paramstests
  2019-08-15 13:42 [patch net-next v3 0/2] selftests: netdevsim: add devlink paramstests Jiri Pirko
  2019-08-15 13:42 ` [patch net-next v3 1/2] selftests: net: push jq workaround into separate helper Jiri Pirko
  2019-08-15 13:42 ` [patch net-next v3 2/2] selftests: netdevsim: add devlink params tests Jiri Pirko
@ 2019-08-15 19:01 ` David Miller
  2 siblings, 0 replies; 5+ messages in thread
From: David Miller @ 2019-08-15 19:01 UTC (permalink / raw
  To: jiri; +Cc: netdev, jakub.kicinski, mlxsw

From: Jiri Pirko <jiri@resnulli.us>
Date: Thu, 15 Aug 2019 15:42:27 +0200

> From: Jiri Pirko <jiri@mellanox.com>
> 
> The first patch is just a helper addition as a dependency of the actual
> test in patch number two.

Series applied.

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

end of thread, other threads:[~2019-08-15 19:01 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-08-15 13:42 [patch net-next v3 0/2] selftests: netdevsim: add devlink paramstests Jiri Pirko
2019-08-15 13:42 ` [patch net-next v3 1/2] selftests: net: push jq workaround into separate helper Jiri Pirko
2019-08-15 13:42 ` [patch net-next v3 2/2] selftests: netdevsim: add devlink params tests Jiri Pirko
2019-08-15 17:33   ` Jakub Kicinski
2019-08-15 19:01 ` [patch net-next v3 0/2] selftests: netdevsim: add devlink paramstests 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.