summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSerge Semin <fancer.lancer@gmail.com>2017-12-06 17:32:00 +0300
committerJon Mason <jdmason@kudzu.us>2018-01-28 22:17:24 -0500
commit0298e5b9d0107a2c9d6e5ddf52ab90b405c3802d (patch)
treedb8666009f562a69c05db593758259ad92e15e10
parentdd151d7200ae6c5cfddbec7eb1a55ba8319e12b2 (diff)
downloadop-kernel-dev-0298e5b9d0107a2c9d6e5ddf52ab90b405c3802d.zip
op-kernel-dev-0298e5b9d0107a2c9d6e5ddf52ab90b405c3802d.tar.gz
NTB: ntb_test: Update ntb_tool link tests
Link Up and Down methods are used to change NTB link settings on local side only for multi-port devices. Link is considered up only if both sides local and peer set it up. Intel/AMD hardware acts a bit different by assigning the Primary and Secondary roles, so Primary device only is able to change the link state. Such behaviour should be reflected in the test code. Signed-off-by: Serge Semin <fancer.lancer@gmail.com> Signed-off-by: Jon Mason <jdmason@kudzu.us>
-rwxr-xr-xtools/testing/selftests/ntb/ntb_test.sh26
1 files changed, 15 insertions, 11 deletions
diff --git a/tools/testing/selftests/ntb/ntb_test.sh b/tools/testing/selftests/ntb/ntb_test.sh
index 541ba70..a3942f3 100755
--- a/tools/testing/selftests/ntb/ntb_test.sh
+++ b/tools/testing/selftests/ntb/ntb_test.sh
@@ -138,6 +138,11 @@ function check_file()
fi
}
+function subdirname()
+{
+ echo $(basename $(dirname $1)) 2> /dev/null
+}
+
function find_pidx()
{
PORT=$1
@@ -183,9 +188,9 @@ function link_test()
REM=$2
EXP=0
- echo "Running link tests on: $(basename $LOC) / $(basename $REM)"
+ echo "Running link tests on: $(subdirname $LOC) / $(subdirname $REM)"
- if ! write_file "N" "$LOC/link" 2> /dev/null; then
+ if ! write_file "N" "$LOC/../link" 2> /dev/null; then
echo " Unsupported"
return
fi
@@ -193,12 +198,11 @@ function link_test()
write_file "N" "$LOC/link_event"
if [[ $(read_file "$REM/link") != "N" ]]; then
- echo "Expected remote link to be down in $REM/link" >&2
+ echo "Expected link to be down in $REM/link" >&2
exit -1
fi
- write_file "Y" "$LOC/link"
- write_file "Y" "$LOC/link_event"
+ write_file "Y" "$LOC/../link"
echo " Passed"
}
@@ -379,15 +383,15 @@ function ntb_tool_tests()
port_test "$LOCAL_TOOL" "$REMOTE_TOOL"
- write_file "Y" "$LOCAL_TOOL/link_event"
- write_file "Y" "$REMOTE_TOOL/link_event"
+ LOCAL_PEER_TOOL="$LOCAL_TOOL/peer$LOCAL_PIDX"
+ REMOTE_PEER_TOOL="$REMOTE_TOOL/peer$REMOTE_PIDX"
- link_test "$LOCAL_TOOL" "$REMOTE_TOOL"
- link_test "$REMOTE_TOOL" "$LOCAL_TOOL"
+ link_test "$LOCAL_PEER_TOOL" "$REMOTE_PEER_TOOL"
+ link_test "$REMOTE_PEER_TOOL" "$LOCAL_PEER_TOOL"
#Ensure the link is up on both sides before continuing
- write_file "Y" "$LOCAL_TOOL/link_event"
- write_file "Y" "$REMOTE_TOOL/link_event"
+ write_file "Y" "$LOCAL_PEER_TOOL/link_event"
+ write_file "Y" "$REMOTE_PEER_TOOL/link_event"
for PEER_TRANS in $(ls "$LOCAL_TOOL"/peer_trans*); do
PT=$(basename $PEER_TRANS)
OpenPOWER on IntegriCloud