]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
selftests/vsock: avoid false-positives when checking dmesg
authorBobby Eshleman <bobbyeshleman@meta.com>
Wed, 5 Nov 2025 15:59:19 +0000 (07:59 -0800)
committerJakub Kicinski <kuba@kernel.org>
Thu, 6 Nov 2025 15:34:50 +0000 (07:34 -0800)
Sometimes VMs will have some intermittent dmesg warnings that are
unrelated to vsock. Change the dmesg parsing to filter on strings
containing 'vsock' to avoid false positive failures that are unrelated
to vsock. The downside is that it is possible for some vsock related
warnings to not contain the substring 'vsock', so those will be missed.

Fixes: a4a65c6fe08b ("selftests/vsock: add initial vmtest.sh for vsock")
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: Bobby Eshleman <bobbyeshleman@meta.com>
Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>
Link: https://patch.msgid.link/20251105-vsock-vmtest-dmesg-fix-v2-1-1a042a14892c@meta.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/vsock/vmtest.sh

index edacebfc163251eee9cd495eb5e704dc7adc958e..8ceeb8a7894f5be52b60da36d4ebc64b68c97819 100755 (executable)
@@ -389,9 +389,9 @@ run_test() {
        local rc
 
        host_oops_cnt_before=$(dmesg | grep -c -i 'Oops')
-       host_warn_cnt_before=$(dmesg --level=warn | wc -l)
+       host_warn_cnt_before=$(dmesg --level=warn | grep -c -i 'vsock')
        vm_oops_cnt_before=$(vm_ssh -- dmesg | grep -c -i 'Oops')
-       vm_warn_cnt_before=$(vm_ssh -- dmesg --level=warn | wc -l)
+       vm_warn_cnt_before=$(vm_ssh -- dmesg --level=warn | grep -c -i 'vsock')
 
        name=$(echo "${1}" | awk '{ print $1 }')
        eval test_"${name}"
@@ -403,7 +403,7 @@ run_test() {
                rc=$KSFT_FAIL
        fi
 
-       host_warn_cnt_after=$(dmesg --level=warn | wc -l)
+       host_warn_cnt_after=$(dmesg --level=warn | grep -c -i 'vsock')
        if [[ ${host_warn_cnt_after} -gt ${host_warn_cnt_before} ]]; then
                echo "FAIL: kernel warning detected on host" | log_host "${name}"
                rc=$KSFT_FAIL
@@ -415,7 +415,7 @@ run_test() {
                rc=$KSFT_FAIL
        fi
 
-       vm_warn_cnt_after=$(vm_ssh -- dmesg --level=warn | wc -l)
+       vm_warn_cnt_after=$(vm_ssh -- dmesg --level=warn | grep -c -i 'vsock')
        if [[ ${vm_warn_cnt_after} -gt ${vm_warn_cnt_before} ]]; then
                echo "FAIL: kernel warning detected on vm" | log_host "${name}"
                rc=$KSFT_FAIL