mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2025-01-09 15:24:32 +08:00
ec80906b0f
When test_lirc_mode2_user exec failed, the test report failed but still
exit with 0. Fix it by exiting with an error code.
Another issue is for the LIRCDEV checking. With bash -n, we need to quote
the variable, or it will always be true. So if test_lirc_mode2_user was
not run, just exit with skip code.
Fixes: 6bdd533cee
("bpf: add selftest for lirc_mode2 type program")
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Link: https://lore.kernel.org/bpf/20220321024149.157861-1-liuhangbin@gmail.com
42 lines
764 B
Bash
Executable File
42 lines
764 B
Bash
Executable File
#!/bin/bash
|
|
# SPDX-License-Identifier: GPL-2.0
|
|
|
|
# Kselftest framework requirement - SKIP code is 4.
|
|
ksft_skip=4
|
|
ret=$ksft_skip
|
|
|
|
msg="skip all tests:"
|
|
if [ $UID != 0 ]; then
|
|
echo $msg please run this as root >&2
|
|
exit $ksft_skip
|
|
fi
|
|
|
|
GREEN='\033[0;92m'
|
|
RED='\033[0;31m'
|
|
NC='\033[0m' # No Color
|
|
|
|
modprobe rc-loopback
|
|
|
|
for i in /sys/class/rc/rc*
|
|
do
|
|
if grep -q DRV_NAME=rc-loopback $i/uevent
|
|
then
|
|
LIRCDEV=$(grep DEVNAME= $i/lirc*/uevent | sed sQDEVNAME=Q/dev/Q)
|
|
INPUTDEV=$(grep DEVNAME= $i/input*/event*/uevent | sed sQDEVNAME=Q/dev/Q)
|
|
fi
|
|
done
|
|
|
|
if [ -n "$LIRCDEV" ];
|
|
then
|
|
TYPE=lirc_mode2
|
|
./test_lirc_mode2_user $LIRCDEV $INPUTDEV
|
|
ret=$?
|
|
if [ $ret -ne 0 ]; then
|
|
echo -e ${RED}"FAIL: $TYPE"${NC}
|
|
else
|
|
echo -e ${GREEN}"PASS: $TYPE"${NC}
|
|
fi
|
|
fi
|
|
|
|
exit $ret
|