Skip to content

Commit

Permalink
selftests: spectrum-2: Fix multiple_masks_test
Browse files Browse the repository at this point in the history
With recent fix in C-TCAM spillage for delta masks, the test stops to be
falsely positive. So fix it not to use delta by adding src_ip bits to the
masks. Alongside with that, use C-TCAM spill trace to see when the
spillage actually happens.

Signed-off-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Jiri Pirko authored and David S. Miller committed Jan 30, 2019
1 parent 1eadbd3 commit 0d0f20f
Showing 1 changed file with 22 additions and 4 deletions.
26 changes: 22 additions & 4 deletions tools/testing/selftests/drivers/net/mlxsw/spectrum-2/tc_flower.sh
Original file line number Diff line number Diff line change
Expand Up @@ -231,20 +231,38 @@ multiple_masks_test()
# spillage is performed correctly and that the right filter is
# matched

if [[ "$tcflags" != "skip_sw" ]]; then
return 0;
fi

local index

RET=0

NUM_MASKS=32
NUM_ERPS=16
BASE_INDEX=100

for i in $(eval echo {1..$NUM_MASKS}); do
index=$((BASE_INDEX - i))

tc filter add dev $h2 ingress protocol ip pref $index \
handle $index \
flower $tcflags dst_ip 192.0.2.2/${i} src_ip 192.0.2.1 \
action drop
if ((i > NUM_ERPS)); then
exp_hits=1
err_msg="$i filters - C-TCAM spill did not happen when it was expected"
else
exp_hits=0
err_msg="$i filters - C-TCAM spill happened when it should not"
fi

tp_record "mlxsw:mlxsw_sp_acl_atcam_entry_add_ctcam_spill" \
"tc filter add dev $h2 ingress protocol ip pref $index \
handle $index \
flower $tcflags \
dst_ip 192.0.2.2/${i} src_ip 192.0.2.1/${i} \
action drop"
tp_check_hits "mlxsw:mlxsw_sp_acl_atcam_entry_add_ctcam_spill" \
$exp_hits
check_err $? "$err_msg"

$MZ $h1 -c 1 -p 64 -a $h1mac -b $h2mac -A 192.0.2.1 \
-B 192.0.2.2 -t ip -q
Expand Down

0 comments on commit 0d0f20f

Please sign in to comment.