Description of problem: anolis23 x86 ECS环境下,nightly kernel-selftest测试,case: cgroup.test_kmem测试异常 Version-Release number of selected component (if applicable): How reproducible: Steps to Reproduce: 1)下载当前内核对应的kernel源码包 2) rpm -ivh xxx.src.rpm 默认安装到/root下 yum-builddep -y rpmbuild/SPECS/kernel.spec 自动安装前置依赖包,需要yum-utils rpmbuild -bp ./rpmbuild/SPECS/kernel.spec # 这个步骤会打相关的patch, 解压缩tar包,生成BUILD目录 cd rpmbuild/BUILD/kernel-xxx/linux-xxx/ cd /tools/testing/selftests/cgroup make ./test_kmem Actual results: [root@qibo-anolis23-nightly-func-x86-1 cgroup]# ./test_kmem not ok 1 test_kmem_basic ok 2 test_kmem_memcg_deletion ok 3 test_kmem_proc_kpagecgroup not ok 4 test_kmem_kernel_stacks ok 5 test_kmem_dead_cgroups memory.current 0 percpu 0 not ok 6 test_percpu_basic [root@qibo-anolis23-nightly-func-x86-1 cgroup]# echo $? 1 [root@qibo-anolis23-nightly-func-x86-1 cgroup]# uname -r 5.10.134-9.git.b9e0e840126f.an23.x86_64 [root@qibo-anolis23-nightly-func-x86-1 cgroup]# cat /etc/anolis-release Anolis OS release 23 Expected results: case pass Additional info: [root@qibo-anolis23-nightly-func-x86-1 cgroup]# uname -r 5.10.134-9.git.b9e0e840126f.an23.x86_64 [root@qibo-anolis23-nightly-func-x86-1 cgroup]# cat /etc/anolis-release Anolis OS release 23 [root@qibo-anolis23-nightly-func-x86-1 cgroup]# cat /proc/cmdline BOOT_IMAGE=(hd0,msdos1)/boot/vmlinuz-5.10.134-9.git.b9e0e840126f.an23.x86_64 root=UUID=ece72b7f-465b-433d-8b3b-e5fa53a04642 ro rhgb cryptomgr.notests rcupdate.rcu_cpu_stall_timeout=300 quiet biosdevname=0 net.ifnames=0 console=tty0 console=ttyS0,115200n8 noibrs nvme_core.io_timeout=4294967295 nvme_core.admin_timeout=4294967295 cgroup.memory=nokmem crashkernel=0M-2G:0M,2G-8G:192M,8G-:256M [root@qibo-anolis23-nightly-func-x86-1 cgroup]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 4.0M 0 4.0M 0% /dev tmpfs 7.6G 4.0K 7.6G 1% /dev/shm tmpfs 3.1G 608K 3.1G 1% /run /dev/vda1 40G 18G 23G 44% / tmpfs 7.6G 1.5G 6.1G 20% /tmp tmpfs 1.6G 0 1.6G 0% /run/user/0 [root@qibo-anolis23-nightly-func-x86-1 cgroup]# free -g total used free shared buff/cache available Mem: 15 0 12 1 2 12 Swap: 0 0 0 [root@qibo-anolis23-nightly-func-x86-1 cgroup]# [root@qibo-anolis23-nightly-func-x86-1 cgroup]# 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): 4 On-line CPU(s) list: 0-3 Vendor ID: GenuineIntel BIOS Vendor ID: Alibaba Cloud Model name: Intel(R) Xeon(R) Platinum 8369B CPU @ 2.70GHz BIOS Model name: pc-i440fx-2.1 CPU @ 0.0GHz BIOS CPU family: 1 CPU family: 6 Model: 106 Thread(s) per core: 2 Core(s) per socket: 2 Socket(s): 1 Stepping: 6 BogoMIPS: 5399.99 Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss h t syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc cpuid tsc_known_freq pni pclmulq dq monitor ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single ibrs_enhanced fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves wbnoinvd arat avx512vbmi pku ospke avx512_vbmi2 gfni vaes vpc lmulqdq avx512_vnni avx512_bitalg avx512_vpopcntdq rdpid fsrm arch_capabilities Virtualization features: Hypervisor vendor: KVM Virtualization type: full Caches (sum of all): L1d: 96 KiB (2 instances) L1i: 64 KiB (2 instances) L2: 2.5 MiB (2 instances) L3: 48 MiB (1 instance) NUMA: NUMA node(s): 1 NUMA node0 CPU(s): 0-3 Vulnerabilities: Itlb multihit: Not affected L1tf: Not affected Mds: Not affected Meltdown: Not affected Mmio stale data: Vulnerable: Clear CPU buffers attempted, no microcode; SMT Host state unknown Retbleed: Not affected Spec store bypass: Vulnerable Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization Spectre v2: Mitigation; Enhanced IBRS, RSB filling, PBRSB-eIBRS SW sequence Srbds: Not affected Tsx async abort: Not affected
an23 上是cgroupv2,kernel-selftests的cgroup默认是不是v1的?这估计得适配。类似https://bugzilla.openanolis.cn/show_bug.cgi?id=4395。 maqiao帮忙确认一下,后续是不是需要在23上更新适配一下cgroup的case。
原因:anolis 23的kernel cmdline里面有cgroup.memory=nokmem,策略上不会统计内核的内存使用,因此test_kmem_basic里面对slab的统计测试,test_kmem_kernel_stacks里面对kernel stack的测试都会失败。
在有cgroup.memory=nokmem参数的情况下,slab,stack的信息输出都是0,符合预期
*** Bug 5622 has been marked as a duplicate of this bug. ***