[问题描述] 内部的物理机anolis23 x86环境下,内核为6.6.25-2.2_rc1.an23.x86_64系统上,运行kernel-selftests测试resctrl.resctrl_tests用例fail。 [期望结果] case pass [实际结果] case有两个失败项 ------------------ [root@5f9Lab15 resctrl]# ./resctrl_tests TAP version 13 # Pass: Check kernel supports resctrl filesystem # Pass: Check resctrl mountpoint "/sys/fs/resctrl" exists # resctrl filesystem not mounted 1..4 # Starting MBM BW change ... # Mounting resctrl to "/sys/fs/resctrl" # Benchmark PID: 230578 # Writing benchmark parameters to resctrl FS # Write schema "MB:0=100" to resctrl FS # Checking for pass/fail # Pass: Check MBM diff within 8% # avg_diff_per: 0% # Span (MB): 250 # avg_bw_imc: 13290 # avg_bw_resc: 13356 ok 1 MBM: bw change # Starting MBA Schemata change ... # Mounting resctrl to "/sys/fs/resctrl" # Benchmark PID: 230630 # Writing benchmark parameters to resctrl FS # Write schema "MB:0=100" to resctrl FS # Write schema "MB:0=90" to resctrl FS # Write schema "MB:0=80" to resctrl FS # Write schema "MB:0=70" to resctrl FS # Write schema "MB:0=60" to resctrl FS # Write schema "MB:0=50" to resctrl FS # Write schema "MB:0=40" to resctrl FS # Write schema "MB:0=30" to resctrl FS # Write schema "MB:0=20" to resctrl FS # Write schema "MB:0=10" to resctrl FS # Results are displayed in (MB) # Pass: Check MBA diff within 8% for schemata 100 # avg_diff_per: 0% # avg_bw_imc: 13153 # avg_bw_resc: 13150 # Pass: Check MBA diff within 8% for schemata 90 # avg_diff_per: 0% # avg_bw_imc: 12755 # avg_bw_resc: 12640 # Pass: Check MBA diff within 8% for schemata 80 # avg_diff_per: 0% # avg_bw_imc: 12290 # avg_bw_resc: 12186 # Pass: Check MBA diff within 8% for schemata 70 # avg_diff_per: 1% # avg_bw_imc: 10814 # avg_bw_resc: 10682 # Pass: Check MBA diff within 8% for schemata 60 # avg_diff_per: 1% # avg_bw_imc: 9450 # avg_bw_resc: 9304 # Pass: Check MBA diff within 8% for schemata 50 # avg_diff_per: 1% # avg_bw_imc: 8434 # avg_bw_resc: 8333 # Pass: Check MBA diff within 8% for schemata 40 # avg_diff_per: 1% # avg_bw_imc: 6968 # avg_bw_resc: 6837 # Pass: Check MBA diff within 8% for schemata 30 # avg_diff_per: 2% # avg_bw_imc: 5314 # avg_bw_resc: 5187 # Pass: Check MBA diff within 8% for schemata 20 # avg_diff_per: 5% # avg_bw_imc: 3281 # avg_bw_resc: 3090 # Fail: Check MBA diff within 8% for schemata 10 # avg_diff_per: 23% # avg_bw_imc: 938 # avg_bw_resc: 717 # Fail: Check schemata change using MBA # At least one test failed not ok 2 MBA: schemata change # Starting CMT test ... # Mounting resctrl to "/sys/fs/resctrl" # Cache size :18874368 # Benchmark PID: 241995 # Writing benchmark parameters to resctrl FS # Checking for pass/fail # Pass: Check cache miss rate within 15% # Percent diff=15 # Number of bits: 5 # Average LLC val: 6684672 # Cache span (bytes): 7864320 ok 3 CMT: test # Starting CAT test ... # Mounting resctrl to "/sys/fs/resctrl" # Cache size :18874368 # Writing benchmark parameters to resctrl FS # Write schema "L3:0=3f" to resctrl FS # Writing benchmark parameters to resctrl FS # Write schema "L3:0=fc0" to resctrl FS # Checking for pass/fail # Fail: Check cache miss rate within 4% # Percent diff=19 # Number of bits: 6 # Average LLC val: 118847 # Cache span (lines): 147456 # Checking for pass/fail # Fail: Check cache miss rate within 4% # Percent diff=19 # Number of bits: 6 # Average LLC val: 119430 # Cache span (lines): 147456 not ok 4 CAT: test # Totals: pass:2 fail:2 xfail:0 xpass:0 skip:0 error:0 [复现步骤] 1. wget https://build.openanolis.cn/kojifiles/output/nightly/anolis-23-20241101.5/compose/os/source/tree/Packages/kernel-6.6.25-2.2_rc1.an23.src.rpm 2. rpm -i kernel-6.6.25-2.2_rc1.an23.src.rpm yum-builddep -y /root/rpmbuild/SPECS/kernel.spec rpmbuild -bp /root/rpmbuild/SPECS/kernel.spec cd /root/rpmbuild/BUILD/kernel-*xxx/linux-* make -C tools/testing/selftests/ cd resctrl;make ./resctrl_tests [环境信息] [root@5f9Lab15 resctrl]# uname -a Linux 5f9Lab15 6.6.25-2.2_rc1.an23.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Oct 31 21:26:10 CST 2024 x86_64 x86_64 x86_64 GNU/Linux [root@5f9Lab15 resctrl]# [root@5f9Lab15 resctrl]# cat /proc/cmdline BOOT_IMAGE=(hd1,gpt2)/vmlinuz-6.6.25-2.2_rc1.an23.x86_64 root=UUID=dca78281-9421-4a9b-9bb5-c4ec9804a355 ro resume=UUID=85dbb4f6-3cdd-4b68-b32e-ddfef04aaf1a rhgb quiet selinux=0 cgroup.memory=nokmem crashkernel=0M-2G:0M,2G-8G:192M,8G-:256M [root@5f9Lab15 resctrl]# [root@5f9Lab15 resctrl]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda4 444G 18G 426G 5% / devtmpfs 4.0M 600K 3.5M 15% /dev tmpfs 126G 0 126G 0% /dev/shm efivarfs 268K 164K 100K 63% /sys/firmware/efi/efivars tmpfs 51G 2.5M 51G 1% /run tmpfs 126G 56M 126G 1% /tmp /dev/sda2 960M 234M 727M 25% /boot /dev/sda1 200M 6.2M 194M 4% /boot/efi tmpfs 26G 48K 26G 1% /run/user/0 [root@5f9Lab15 resctrl]# [root@5f9Lab15 resctrl]# free -g total used free shared buff/cache available Mem: 251 3 249 0 0 248 Swap: 1 0 1 [root@5f9Lab15 resctrl]# [root@5f9Lab15 resctrl]# lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Address sizes: 46 bits physical, 57 bits virtual Byte Order: Little Endian CPU(s): 48 On-line CPU(s) list: 0-47 Vendor ID: GenuineIntel BIOS Vendor ID: Intel(R) Corporation Model name: Intel(R) Xeon(R) Silver 4310 CPU @ 2.10GHz BIOS Model name: Intel(R) Xeon(R) Silver 4310 CPU @ 2.10GHz CPU @ 2.1GHz BIOS CPU family: 179 CPU family: 6 Model: 106 Thread(s) per core: 2 Core(s) per socket: 12 Socket(s): 2 Stepping: 6 CPU(s) scaling MHz: 27% CPU max MHz: 3300.0000 CPU min MHz: 800.0000 BogoMIPS: 4200.00 Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonsto p_tsc cpuid aperfmperf pni pclmulqdq dtes64 ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse 4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_f ault epb cat_l3 ssbd mba ibrs ibpb stibp ibrs_enhanced tpr_shadow flexpriority ept vpid ept_ad fsgsbase tsc_a djust bmi1 hle avx2 smep bmi2 erms invpcid rtm cqm rdt_a avx512f avx512dq rdseed adx smap avx512ifma clflusho pt clwb intel_pt avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_m bm_total cqm_mbm_local split_lock_detect wbnoinvd dtherm ida arat pln pts vnmi avx512vbmi umip pku ospke avx5 12_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg tme avx512_vpopcntdq rdpid fsrm md_clear pconfig flus h_l1d arch_capabilities Virtualization features: Virtualization: VT-x Caches (sum of all): L1d: 1.1 MiB (24 instances) L1i: 768 KiB (24 instances) L2: 30 MiB (24 instances) L3: 36 MiB (2 instances) NUMA: NUMA node(s): 2 NUMA node0 CPU(s): 0-11,24-35 NUMA node1 CPU(s): 12-23,36-47 Vulnerabilities: Gather data sampling: Mitigation; Microcode Itlb multihit: Not affected L1tf: Not affected Mds: Not affected Meltdown: Not affected Mmio stale data: Mitigation; Clear CPU buffers; SMT vulnerable Reg file data sampling: Not affected Retbleed: Not affected Spec rstack overflow: Not affected Spec store bypass: Mitigation; Speculative Store Bypass disabled via prctl Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization Spectre v2: Mitigation; Enhanced / Automatic IBRS, IBPB conditional, RSB filling, PBRSB-eIBRS SW sequence Srbds: Not affected Tsx async abort: Not affected
这个测试fail的原因可能是后台其他任务的干扰,需要确认测试机器跑测试时是否还有别的后台任务运行
重启了机器排除了机器任务的干扰,重新执行case,执行多次都会出现 Fail: Check cache miss rate within 4% 这个测试项的fail -------------------------- [root@5f9Lab15 resctrl]# ./resctrl_tests TAP version 13 # Pass: Check kernel supports resctrl filesystem # Pass: Check resctrl mountpoint "/sys/fs/resctrl" exists # resctrl filesystem not mounted # dmesg: [ 1.761867] resctrl: L3 allocation detected # dmesg: [ 1.761868] resctrl: MB allocation detected # dmesg: [ 1.761869] resctrl: L3 monitoring detected 1..4 # Starting MBM BW change ... # Mounting resctrl to "/sys/fs/resctrl" # Benchmark PID: 5780 # Writing benchmark parameters to resctrl FS # Write schema "MB:0=100" to resctrl FS # Checking for pass/fail # Pass: Check MBM diff within 8% # avg_diff_per: 0% # Span (MB): 250 # avg_bw_imc: 13213 # avg_bw_resc: 13282 ok 1 MBM: bw change # Starting MBA Schemata change ... # Mounting resctrl to "/sys/fs/resctrl" # Benchmark PID: 5790 # Writing benchmark parameters to resctrl FS # Write schema "MB:0=100" to resctrl FS # Write schema "MB:0=90" to resctrl FS # Write schema "MB:0=80" to resctrl FS # Write schema "MB:0=70" to resctrl FS # Write schema "MB:0=60" to resctrl FS # Write schema "MB:0=50" to resctrl FS # Write schema "MB:0=40" to resctrl FS # Write schema "MB:0=30" to resctrl FS # Write schema "MB:0=20" to resctrl FS # Write schema "MB:0=10" to resctrl FS # Results are displayed in (MB) # Pass: Check MBA diff within 8% for schemata 100 # avg_diff_per: 0% # avg_bw_imc: 13207 # avg_bw_resc: 13283 # Pass: Check MBA diff within 8% for schemata 90 # avg_diff_per: 0% # avg_bw_imc: 13212 # avg_bw_resc: 13284 # Pass: Check MBA diff within 8% for schemata 80 # avg_diff_per: 0% # avg_bw_imc: 12495 # avg_bw_resc: 12549 # Pass: Check MBA diff within 8% for schemata 70 # avg_diff_per: 0% # avg_bw_imc: 11147 # avg_bw_resc: 11192 # Pass: Check MBA diff within 8% for schemata 60 # avg_diff_per: 0% # avg_bw_imc: 9324 # avg_bw_resc: 9349 # Pass: Check MBA diff within 8% for schemata 50 # avg_diff_per: 0% # avg_bw_imc: 8358 # avg_bw_resc: 8388 # Pass: Check MBA diff within 8% for schemata 40 # avg_diff_per: 0% # avg_bw_imc: 6968 # avg_bw_resc: 6988 # Pass: Check MBA diff within 8% for schemata 30 # avg_diff_per: 0% # avg_bw_imc: 5432 # avg_bw_resc: 5428 # Pass: Check MBA diff within 8% for schemata 20 # avg_diff_per: 2% # avg_bw_imc: 3616 # avg_bw_resc: 3510 # Pass: Check MBA diff within 8% for schemata 10 # avg_diff_per: 2% # avg_bw_imc: 734 # avg_bw_resc: 715 # Pass: Check schemata change using MBA ok 2 MBA: schemata change # Starting CMT test ... # Mounting resctrl to "/sys/fs/resctrl" # Cache size :18874368 # Benchmark PID: 5849 # Writing benchmark parameters to resctrl FS # Checking for pass/fail # Pass: Check cache miss rate within 15% # Percent diff=14 # Number of bits: 5 # Average LLC val: 6703104 # Cache span (bytes): 7864320 ok 3 CMT: test # Starting CAT test ... # Mounting resctrl to "/sys/fs/resctrl" # Cache size :18874368 # Writing benchmark parameters to resctrl FS # Write schema "L3:0=3f" to resctrl FS # Writing benchmark parameters to resctrl FS # Write schema "L3:0=fc0" to resctrl FS # Checking for pass/fail # Fail: Check cache miss rate within 4% # Percent diff=16 # Number of bits: 6 # Average LLC val: 122522 # Cache span (lines): 147456 # Checking for pass/fail # Fail: Check cache miss rate within 4% # Percent diff=24 # Number of bits: 6 # Average LLC val: 111073 # Cache span (lines): 147456 not ok 4 CAT: test # Totals: pass:3 fail:1 xfail:0 xpass:0 skip:0 error:0 [root@5f9Lab15 resctrl]# [root@5f9Lab15 resctrl]# uname -r 6.6.25-2.2_rc1.an23.x86_64
请确认一下在 6.6.25-2.1 版本中是否存在该问题
(In reply to banye97 from comment #3) > 请确认一下在 6.6.25-2.1 版本中是否存在该问题 在6.6.25-2.1内核上,只是最后一个测试项Fail ----------------------------------------------------- [root@5f9Lab15 resctrl]# ./resctrl_tests TAP version 13 # Pass: Check kernel supports resctrl filesystem # Pass: Check resctrl mountpoint "/sys/fs/resctrl" exists # resctrl filesystem not mounted # dmesg: [ 1.757120] resctrl: L3 allocation detected # dmesg: [ 1.757122] resctrl: MB allocation detected # dmesg: [ 1.757123] resctrl: L3 monitoring detected 1..4 # Starting MBM BW change ... # Mounting resctrl to "/sys/fs/resctrl" # Benchmark PID: 6722 # Writing benchmark parameters to resctrl FS # Write schema "MB:0=100" to resctrl FS # Checking for pass/fail # Pass: Check MBM diff within 8% # avg_diff_per: 0% # Span (MB): 250 # avg_bw_imc: 13262 # avg_bw_resc: 13327 ok 1 MBM: bw change # Starting MBA Schemata change ... # Mounting resctrl to "/sys/fs/resctrl" # Benchmark PID: 6731 # Writing benchmark parameters to resctrl FS # Write schema "MB:0=100" to resctrl FS # Write schema "MB:0=90" to resctrl FS # Write schema "MB:0=80" to resctrl FS # Write schema "MB:0=70" to resctrl FS # Write schema "MB:0=60" to resctrl FS # Write schema "MB:0=50" to resctrl FS # Write schema "MB:0=40" to resctrl FS # Write schema "MB:0=30" to resctrl FS # Write schema "MB:0=20" to resctrl FS # Write schema "MB:0=10" to resctrl FS # Results are displayed in (MB) # Pass: Check MBA diff within 8% for schemata 100 # avg_diff_per: 0% # avg_bw_imc: 13270 # avg_bw_resc: 13345 # Pass: Check MBA diff within 8% for schemata 90 # avg_diff_per: 0% # avg_bw_imc: 13263 # avg_bw_resc: 13330 # Pass: Check MBA diff within 8% for schemata 80 # avg_diff_per: 0% # avg_bw_imc: 12540 # avg_bw_resc: 12601 # Pass: Check MBA diff within 8% for schemata 70 # avg_diff_per: 0% # avg_bw_imc: 11189 # avg_bw_resc: 11233 # Pass: Check MBA diff within 8% for schemata 60 # avg_diff_per: 0% # avg_bw_imc: 9339 # avg_bw_resc: 9367 # Pass: Check MBA diff within 8% for schemata 50 # avg_diff_per: 0% # avg_bw_imc: 8372 # avg_bw_resc: 8395 # Pass: Check MBA diff within 8% for schemata 40 # avg_diff_per: 0% # avg_bw_imc: 6965 # avg_bw_resc: 6982 # Pass: Check MBA diff within 8% for schemata 30 # avg_diff_per: 0% # avg_bw_imc: 5440 # avg_bw_resc: 5426 # Pass: Check MBA diff within 8% for schemata 20 # avg_diff_per: 2% # avg_bw_imc: 3606 # avg_bw_resc: 3505 # Pass: Check MBA diff within 8% for schemata 10 # avg_diff_per: 3% # avg_bw_imc: 740 # avg_bw_resc: 717 # Pass: Check schemata change using MBA ok 2 MBA: schemata change # Starting CMT test ... # Mounting resctrl to "/sys/fs/resctrl" # Cache size :18874368 # Benchmark PID: 6782 # Writing benchmark parameters to resctrl FS # Checking for pass/fail # Pass: Check cache miss rate within 15% # Percent diff=12 # Number of bits: 5 # Average LLC val: 6868992 # Cache span (bytes): 7864320 ok 3 CMT: test # Starting CAT test ... # Mounting resctrl to "/sys/fs/resctrl" # Cache size :18874368 # Writing benchmark parameters to resctrl FS # Write schema "L3:0=3f" to resctrl FS # Writing benchmark parameters to resctrl FS # Write schema "L3:0=fc0" to resctrl FS # Checking for pass/fail # Fail: Check cache miss rate within 4% # Percent diff=15 # Number of bits: 6 # Average LLC val: 124694 # Cache span (lines): 147456 # Checking for pass/fail # Fail: Check cache miss rate within 4% # Percent diff=16 # Number of bits: 6 # Average LLC val: 123703 # Cache span (lines): 147456 not ok 4 CAT: test # Totals: pass:3 fail:1 xfail:0 xpass:0 skip:0 error:0 [root@5f9Lab15 resctrl]# [root@5f9Lab15 resctrl]# ./resctrl_tests^C [root@5f9Lab15 resctrl]# uname -r 6.6.25-2.1.an23.x86_64 [root@5f9Lab15 resctrl]# [root@5f9Lab15 resctrl]# pwd /root/rpmbuild/BUILD/kernel-6.6.25-2.1.an23/linux-6.6.25-2.1.an23.x86_64/tools/testing/selftests/resctrl
非 6.6.25-002.2 版本新增问题,暂不修复。