]> www.infradead.org Git - users/dwmw2/linux.git/commitdiff
selftests: openvswitch: Be more verbose with selftest debugging.
authorAaron Conole <aconole@redhat.com>
Tue, 2 Jul 2024 13:28:30 +0000 (09:28 -0400)
committerJakub Kicinski <kuba@kernel.org>
Thu, 4 Jul 2024 02:29:15 +0000 (19:29 -0700)
The openvswitch selftest is difficult to debug for anyone that isn't
directly familiar with the openvswitch module and the specifics of the
test cases.  Many times when something fails, the debug log will be
sparsely populated and it takes some time to understand where a failure
occured.

Increase the amount of details logged to the debug log by trapping all
'info' logs, and all 'ovs_sbx' commands.

Signed-off-by: Aaron Conole <aconole@redhat.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20240702132830.213384-4-aconole@redhat.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/net/openvswitch/openvswitch.sh

index 0bd0425848d97f86f618a0bacc3e51be673c28c4..531951086d9c35dc506add04c65ec3ff29d7af04 100755 (executable)
@@ -23,7 +23,9 @@ tests="
        drop_reason                             drop: test drop reasons are emitted"
 
 info() {
-    [ $VERBOSE = 0 ] || echo $*
+       [ "${ovs_dir}" != "" ] &&
+               echo "`date +"[%m-%d %H:%M:%S]"` $*" >> ${ovs_dir}/debug.log
+       [ $VERBOSE = 0 ] || echo $*
 }
 
 ovs_base=`pwd`
@@ -65,7 +67,8 @@ ovs_setenv() {
 
 ovs_sbx() {
        if test "X$2" != X; then
-               (ovs_setenv $1; shift; "$@" >> ${ovs_dir}/debug.log)
+               (ovs_setenv $1; shift;
+                info "run cmd: $@"; "$@" >> ${ovs_dir}/debug.log)
        else
                ovs_setenv $1
        fi
@@ -139,7 +142,7 @@ ovs_add_flow () {
        info "Adding flow to DP: sbx:$1 br:$2 flow:$3 act:$4"
        ovs_sbx "$1" python3 $ovs_base/ovs-dpctl.py add-flow "$2" "$3" "$4"
        if [ $? -ne 0 ]; then
-               echo "Flow [ $3 : $4 ] failed" >> ${ovs_dir}/debug.log
+               info "Flow [ $3 : $4 ] failed"
                return 1
        fi
        return 0