Bug 5474 - [ANCK-5.10-15-rc1][alinux3][x86_64/aarch64][nightly]kernelselftest新增用例失败tdx.tdx_guest_test,报错tdx_guest_test.c:138:verify_report:Expected 0 (0) < devfd (-1)
Summary: [ANCK-5.10-15-rc1][alinux3][x86_64/aarch64][nightly]kernelselftest新增用例失败tdx.t...
Status: CLOSED INVALID
Alias: None
Product: ANCK 5.10 Dev
Classification: ANCK
Component: virt (show other bugs) virt
Version: 5.10.y-15
Hardware: All Linux
: P3-Medium S3-normal
Target Milestone: rc
Assignee: zelin
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-06-09 11:08 UTC by wangpingping
Modified: 2023-06-30 11:06 UTC (History)
7 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description wangpingping alibaba_cloud_group 2023-06-09 11:08:16 UTC
[缺陷描述]:
kernelselftest新增失败用例tdx:tdx_guest_test,此用例为今日nightly新增用例,之前没有此用例;


失败日志如下:
# ./tdx_guest_test
TAP version 13
1..1
# Starting 1 tests from 1 test cases.
#  RUN           global.verify_report ...
# tdx_guest_test.c:138:verify_report:Expected 0 (0) < devfd (-1)
# verify_report: Test terminated by assertion
#          FAIL  global.verify_report
not ok 1 global.verify_report
# FAILED: 0 / 1 tests passed.
# Totals: pass:0 fail:1 xfail:0 xpass:0 skip:0 error:0

strace日志:
# strace ./tdx_guest_test
execve("./tdx_guest_test", ["./tdx_guest_test"], 0xffffcc4affd0 /* 26 vars */) = 0
brk(NULL)                               = 0x3a9ec000
brk(0x3a9ecb30)                         = 0x3a9ecb30
uname({sysname="Linux", nodename="VM20200706-19", ...}) = 0
readlinkat(AT_FDCWD, "/proc/self/exe", "/tmp/tone/run/kernel-selftests/t"..., 4096) = 49
brk(0x3aa0db30)                         = 0x3aa0db30
brk(0x3aa0e000)                         = 0x3aa0e000
mprotect(0x48f000, 4096, PROT_READ)     = 0
mmap(NULL, 1024, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_ANONYMOUS, -1, 0) = 0xffff8a8cd000
fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0), ...}) = 0
write(1, "TAP version 13\n", 15TAP version 13
)        = 15
write(1, "1..1\n", 51..1
)                   = 5
write(1, "# Starting 1 tests from 1 test c"..., 38# Starting 1 tests from 1 test cases.
) = 38
write(1, "#  RUN           global.verify_r"..., 42#  RUN           global.verify_report ...
) = 42
clone(child_stack=NULL, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x3a9ec0d0) = 15634
# tdx_guest_test.c:138:verify_report:Expected 0 (0) < devfd (-1)
rt_sigaction(SIGALRM, {sa_handler=0x400ab0, sa_mask=[], sa_flags=SA_SIGINFO}, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, 8) = 0
setitimer(ITIMER_REAL, {it_interval={tv_sec=0, tv_usec=0}, it_value={tv_sec=30, tv_usec=0}}, {it_interval={tv_sec=0, tv_usec=0}, it_value={tv_sec=0, tv_usec=0}}) = 0
wait4(15634, [{WIFSIGNALED(s) && WTERMSIG(s) == SIGABRT && WCOREDUMP(s)}], 0, NULL) = 15634
--- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_DUMPED, si_pid=15634, si_uid=0, si_status=SIGABRT, si_utime=0, si_stime=0} ---
setitimer(ITIMER_REAL, {it_interval={tv_sec=0, tv_usec=0}, it_value={tv_sec=0, tv_usec=0}}, {it_interval={tv_sec=0, tv_usec=0}, it_value={tv_sec=29, tv_usec=779319}}) = 0
rt_sigaction(SIGALRM, {sa_handler=SIG_DFL, sa_mask=[], sa_flags=0}, NULL, 8) = 0
write(2, "# verify_report: Test terminated"..., 46# verify_report: Test terminated by assertion
) = 46
write(1, "#          FAIL  global.verify_r"..., 38#          FAIL  global.verify_report
) = 38
write(1, "not ok 1 global.verify_report\n", 30not ok 1 global.verify_report
) = 30
munmap(0xffff8a8cd000, 1024)            = 0
write(1, "# FAILED: 0 / 1 tests passed.\n", 30# FAILED: 0 / 1 tests passed.
) = 30
write(1, "# Totals: pass:0 fail:1 xfail:0 "..., 55# Totals: pass:0 fail:1 xfail:0 xpass:0 skip:0 error:0
) = 55
exit_group(1)                           = ?
+++ exited with 1 +++

[重现概率]:
必现

[重现环境]:
内核:
# uname -r
5.10.134-956.git.f4a20a6d6.al8.aarch64

# cat /etc/os-release
NAME="Alibaba Cloud Linux"
VERSION="3 (Soaring Falcon)"
ID="alinux"
ID_LIKE="rhel fedora centos"
VERSION_ID="3"
PLATFORM_ID="platform:al8"
PRETTY_NAME="Alibaba Cloud Linux 3 (Soaring Falcon)"
ANSI_COLOR="0;31"
HOME_URL="https://www.aliyun.com/"

CPU信息:
# lscpu
Architecture:        aarch64
Byte Order:          Little Endian
CPU(s):              4
On-line CPU(s) list: 0-3
Thread(s) per core:  1
Core(s) per cluster: 4
Socket(s):           4
Cluster(s):          1
NUMA node(s):        1
Vendor ID:           HiSilicon
BIOS Vendor ID:      Alibaba Cloud
Model:               0
Model name:          Kunpeng-920
BIOS Model name:     virt-rhel7.6.0
Stepping:            0x1
BogoMIPS:            200.00
NUMA node0 CPU(s):   0-3
Flags:               fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm jscvt fcma dcpop asimddp asimdfhm

内存:
# free -h
              total        used        free      shared  buff/cache   available
Mem:           15Gi       419Mi        13Gi       4.0Mi       1.5Gi        14Gi
Swap:            0B          0B          0B


[期望结果]:
用例执行成功

[实际结果]:
用例执行失败
Comment 1 shanxifanshi alibaba_cloud_group 2023-06-09 14:44:23 UTC
Anolis8 5.10 x86 nightly存在同样的问题,可能是因为CONFIG_INTEL_TDX_GUEST config未打开,缺少module导致的fail

测试日志:
# ./tdx_guest_test
TAP version 13
1..1
# Starting 1 tests from 1 test cases.
#  RUN           global.verify_report ...
# tdx_guest_test.c:138:verify_report:Expected 0 (0) < devfd (-1)
# verify_report: Test terminated by assertion
#          FAIL  global.verify_report
not ok 1 global.verify_report
# FAILED: 0 / 1 tests passed.
# Totals: pass:0 fail:1 xfail:0 xpass:0 skip:0 error:0

环境配置:
# grep -i tdx /boot/config-5.10.134-10.git.f4a20a6d6.an8.x86_64
# CONFIG_INTEL_TDX_GUEST is not set
CONFIG_KVM_INTEL_TDX=y
Comment 2 yunhe123 alibaba_cloud_group 2023-06-09 15:09:04 UTC
Anolis8 5.10 aarch nightly存在同样的问题,日志如下:
# ./tdx_guest_test
TAP version 13
1..1
# Starting 1 tests from 1 test cases.
#  RUN           global.verify_report ...
# tdx_guest_test.c:138:verify_report:Expected 0 (0) < devfd (-1)
# verify_report: Test terminated by assertion
#          FAIL  global.verify_report
not ok 1 global.verify_report
# FAILED: 0 / 1 tests passed.
# Totals: pass:0 fail:1 xfail:0 xpass:0 skip:0 error:0
Comment 3 shanxifanshi alibaba_cloud_group 2023-06-20 10:26:41 UTC
这个问题在Anolis8 ANCK-5.10-15 x86版本仍然存在

# uname -r
5.10.134-15_rc1.an8.x86_64

# grep -i tdx /boot/config-5.10.134-15_rc1.an8.x86_64
# CONFIG_INTEL_TDX_GUEST is not set
CONFIG_KVM_INTEL_TDX=y
Comment 4 zelin alibaba_cloud_group 2023-06-26 11:23:50 UTC
本来就不是tdx guest,这个case失败是预期的。关掉了
Comment 5 zelin alibaba_cloud_group 2023-06-26 11:27:15 UTC
本来就不是tdx guest,这个case失败是预期的。关掉了
Comment 6 wangpingping alibaba_cloud_group 2023-06-30 11:06:21 UTC
失败为预期,作为已知问题记录;