New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
debugfs: File 'verbose' in directory 'sched' already present! #316
Comments
Same issue, here's my system info; |
The prjc patches introduce a bug: zen-kernel/kernel/sched/debug.c Lines 348 to 352 in 8b2b4b6
That |
Added sync-up fix to 6.4/main and opened MR for Project-C: https://gitlab.com/alfredchen/linux-prjc/-/merge_requests/25 |
@heftig Seeing the exact same message again on linux-zen 6.5.4.zen2-1 (Arch Linux). Requested re-opening https://bugs.archlinux.org/task/78977. Not sure if opening a new bug report is advised for 'regressions' like this. |
I'll reopen this issue and assign to me. Until the fix is upstreamed, I'll need to check on every major kernel update. |
Opened a new MR for v6.5: https://gitlab.com/alfredchen/linux-prjc/-/merge_requests/31. Will continue opening new MRs for each major version until fix is upstreamed. |
Enable the cpu v4 tests for LoongArch. Currently, we don't have BPF trampoline in LoongArch JIT, so the fentry test `test_ptr_struct_arg` still failed, will followup. Test result attached below: # ./test_progs -t verifier_sdiv,verifier_movsx,verifier_ldsx,verifier_gotol,verifier_bswap #316/1 verifier_bswap/BSWAP, 16:OK #316/2 verifier_bswap/BSWAP, 16 @unpriv:OK #316/3 verifier_bswap/BSWAP, 32:OK #316/4 verifier_bswap/BSWAP, 32 @unpriv:OK #316/5 verifier_bswap/BSWAP, 64:OK #316/6 verifier_bswap/BSWAP, 64 @unpriv:OK #316 verifier_bswap:OK #330/1 verifier_gotol/gotol, small_imm:OK #330/2 verifier_gotol/gotol, small_imm @unpriv:OK #330 verifier_gotol:OK #338/1 verifier_ldsx/LDSX, S8:OK #338/2 verifier_ldsx/LDSX, S8 @unpriv:OK #338/3 verifier_ldsx/LDSX, S16:OK #338/4 verifier_ldsx/LDSX, S16 @unpriv:OK #338/5 verifier_ldsx/LDSX, S32:OK #338/6 verifier_ldsx/LDSX, S32 @unpriv:OK #338/7 verifier_ldsx/LDSX, S8 range checking, privileged:OK #338/8 verifier_ldsx/LDSX, S16 range checking:OK #338/9 verifier_ldsx/LDSX, S16 range checking @unpriv:OK #338/10 verifier_ldsx/LDSX, S32 range checking:OK #338/11 verifier_ldsx/LDSX, S32 range checking @unpriv:OK #338 verifier_ldsx:OK #349/1 verifier_movsx/MOV32SX, S8:OK #349/2 verifier_movsx/MOV32SX, S8 @unpriv:OK #349/3 verifier_movsx/MOV32SX, S16:OK #349/4 verifier_movsx/MOV32SX, S16 @unpriv:OK #349/5 verifier_movsx/MOV64SX, S8:OK #349/6 verifier_movsx/MOV64SX, S8 @unpriv:OK #349/7 verifier_movsx/MOV64SX, S16:OK #349/8 verifier_movsx/MOV64SX, S16 @unpriv:OK #349/9 verifier_movsx/MOV64SX, S32:OK #349/10 verifier_movsx/MOV64SX, S32 @unpriv:OK #349/11 verifier_movsx/MOV32SX, S8, range_check:OK #349/12 verifier_movsx/MOV32SX, S8, range_check @unpriv:OK #349/13 verifier_movsx/MOV32SX, S16, range_check:OK #349/14 verifier_movsx/MOV32SX, S16, range_check @unpriv:OK #349/15 verifier_movsx/MOV32SX, S16, range_check 2:OK #349/16 verifier_movsx/MOV32SX, S16, range_check 2 @unpriv:OK #349/17 verifier_movsx/MOV64SX, S8, range_check:OK #349/18 verifier_movsx/MOV64SX, S8, range_check @unpriv:OK #349/19 verifier_movsx/MOV64SX, S16, range_check:OK #349/20 verifier_movsx/MOV64SX, S16, range_check @unpriv:OK #349/21 verifier_movsx/MOV64SX, S32, range_check:OK #349/22 verifier_movsx/MOV64SX, S32, range_check @unpriv:OK #349/23 verifier_movsx/MOV64SX, S16, R10 Sign Extension:OK #349/24 verifier_movsx/MOV64SX, S16, R10 Sign Extension @unpriv:OK #349 verifier_movsx:OK torvalds#361/1 verifier_sdiv/SDIV32, non-zero imm divisor, check 1:OK torvalds#361/2 verifier_sdiv/SDIV32, non-zero imm divisor, check 1 @unpriv:OK torvalds#361/3 verifier_sdiv/SDIV32, non-zero imm divisor, check 2:OK torvalds#361/4 verifier_sdiv/SDIV32, non-zero imm divisor, check 2 @unpriv:OK torvalds#361/5 verifier_sdiv/SDIV32, non-zero imm divisor, check 3:OK torvalds#361/6 verifier_sdiv/SDIV32, non-zero imm divisor, check 3 @unpriv:OK torvalds#361/7 verifier_sdiv/SDIV32, non-zero imm divisor, check 4:OK torvalds#361/8 verifier_sdiv/SDIV32, non-zero imm divisor, check 4 @unpriv:OK torvalds#361/9 verifier_sdiv/SDIV32, non-zero imm divisor, check 5:OK torvalds#361/10 verifier_sdiv/SDIV32, non-zero imm divisor, check 5 @unpriv:OK torvalds#361/11 verifier_sdiv/SDIV32, non-zero imm divisor, check 6:OK torvalds#361/12 verifier_sdiv/SDIV32, non-zero imm divisor, check 6 @unpriv:OK torvalds#361/13 verifier_sdiv/SDIV32, non-zero imm divisor, check 7:OK torvalds#361/14 verifier_sdiv/SDIV32, non-zero imm divisor, check 7 @unpriv:OK torvalds#361/15 verifier_sdiv/SDIV32, non-zero imm divisor, check 8:OK torvalds#361/16 verifier_sdiv/SDIV32, non-zero imm divisor, check 8 @unpriv:OK torvalds#361/17 verifier_sdiv/SDIV32, non-zero reg divisor, check 1:OK torvalds#361/18 verifier_sdiv/SDIV32, non-zero reg divisor, check 1 @unpriv:OK torvalds#361/19 verifier_sdiv/SDIV32, non-zero reg divisor, check 2:OK torvalds#361/20 verifier_sdiv/SDIV32, non-zero reg divisor, check 2 @unpriv:OK torvalds#361/21 verifier_sdiv/SDIV32, non-zero reg divisor, check 3:OK torvalds#361/22 verifier_sdiv/SDIV32, non-zero reg divisor, check 3 @unpriv:OK torvalds#361/23 verifier_sdiv/SDIV32, non-zero reg divisor, check 4:OK torvalds#361/24 verifier_sdiv/SDIV32, non-zero reg divisor, check 4 @unpriv:OK torvalds#361/25 verifier_sdiv/SDIV32, non-zero reg divisor, check 5:OK torvalds#361/26 verifier_sdiv/SDIV32, non-zero reg divisor, check 5 @unpriv:OK torvalds#361/27 verifier_sdiv/SDIV32, non-zero reg divisor, check 6:OK torvalds#361/28 verifier_sdiv/SDIV32, non-zero reg divisor, check 6 @unpriv:OK torvalds#361/29 verifier_sdiv/SDIV32, non-zero reg divisor, check 7:OK torvalds#361/30 verifier_sdiv/SDIV32, non-zero reg divisor, check 7 @unpriv:OK torvalds#361/31 verifier_sdiv/SDIV32, non-zero reg divisor, check 8:OK torvalds#361/32 verifier_sdiv/SDIV32, non-zero reg divisor, check 8 @unpriv:OK torvalds#361/33 verifier_sdiv/SDIV64, non-zero imm divisor, check 1:OK torvalds#361/34 verifier_sdiv/SDIV64, non-zero imm divisor, check 1 @unpriv:OK torvalds#361/35 verifier_sdiv/SDIV64, non-zero imm divisor, check 2:OK torvalds#361/36 verifier_sdiv/SDIV64, non-zero imm divisor, check 2 @unpriv:OK torvalds#361/37 verifier_sdiv/SDIV64, non-zero imm divisor, check 3:OK torvalds#361/38 verifier_sdiv/SDIV64, non-zero imm divisor, check 3 @unpriv:OK torvalds#361/39 verifier_sdiv/SDIV64, non-zero imm divisor, check 4:OK torvalds#361/40 verifier_sdiv/SDIV64, non-zero imm divisor, check 4 @unpriv:OK torvalds#361/41 verifier_sdiv/SDIV64, non-zero imm divisor, check 5:OK torvalds#361/42 verifier_sdiv/SDIV64, non-zero imm divisor, check 5 @unpriv:OK torvalds#361/43 verifier_sdiv/SDIV64, non-zero imm divisor, check 6:OK torvalds#361/44 verifier_sdiv/SDIV64, non-zero imm divisor, check 6 @unpriv:OK torvalds#361/45 verifier_sdiv/SDIV64, non-zero reg divisor, check 1:OK torvalds#361/46 verifier_sdiv/SDIV64, non-zero reg divisor, check 1 @unpriv:OK torvalds#361/47 verifier_sdiv/SDIV64, non-zero reg divisor, check 2:OK torvalds#361/48 verifier_sdiv/SDIV64, non-zero reg divisor, check 2 @unpriv:OK torvalds#361/49 verifier_sdiv/SDIV64, non-zero reg divisor, check 3:OK torvalds#361/50 verifier_sdiv/SDIV64, non-zero reg divisor, check 3 @unpriv:OK torvalds#361/51 verifier_sdiv/SDIV64, non-zero reg divisor, check 4:OK torvalds#361/52 verifier_sdiv/SDIV64, non-zero reg divisor, check 4 @unpriv:OK torvalds#361/53 verifier_sdiv/SDIV64, non-zero reg divisor, check 5:OK torvalds#361/54 verifier_sdiv/SDIV64, non-zero reg divisor, check 5 @unpriv:OK torvalds#361/55 verifier_sdiv/SDIV64, non-zero reg divisor, check 6:OK torvalds#361/56 verifier_sdiv/SDIV64, non-zero reg divisor, check 6 @unpriv:OK torvalds#361/57 verifier_sdiv/SMOD32, non-zero imm divisor, check 1:OK torvalds#361/58 verifier_sdiv/SMOD32, non-zero imm divisor, check 1 @unpriv:OK torvalds#361/59 verifier_sdiv/SMOD32, non-zero imm divisor, check 2:OK torvalds#361/60 verifier_sdiv/SMOD32, non-zero imm divisor, check 2 @unpriv:OK torvalds#361/61 verifier_sdiv/SMOD32, non-zero imm divisor, check 3:OK torvalds#361/62 verifier_sdiv/SMOD32, non-zero imm divisor, check 3 @unpriv:OK torvalds#361/63 verifier_sdiv/SMOD32, non-zero imm divisor, check 4:OK torvalds#361/64 verifier_sdiv/SMOD32, non-zero imm divisor, check 4 @unpriv:OK torvalds#361/65 verifier_sdiv/SMOD32, non-zero imm divisor, check 5:OK torvalds#361/66 verifier_sdiv/SMOD32, non-zero imm divisor, check 5 @unpriv:OK torvalds#361/67 verifier_sdiv/SMOD32, non-zero imm divisor, check 6:OK torvalds#361/68 verifier_sdiv/SMOD32, non-zero imm divisor, check 6 @unpriv:OK torvalds#361/69 verifier_sdiv/SMOD32, non-zero reg divisor, check 1:OK torvalds#361/70 verifier_sdiv/SMOD32, non-zero reg divisor, check 1 @unpriv:OK torvalds#361/71 verifier_sdiv/SMOD32, non-zero reg divisor, check 2:OK torvalds#361/72 verifier_sdiv/SMOD32, non-zero reg divisor, check 2 @unpriv:OK torvalds#361/73 verifier_sdiv/SMOD32, non-zero reg divisor, check 3:OK torvalds#361/74 verifier_sdiv/SMOD32, non-zero reg divisor, check 3 @unpriv:OK torvalds#361/75 verifier_sdiv/SMOD32, non-zero reg divisor, check 4:OK torvalds#361/76 verifier_sdiv/SMOD32, non-zero reg divisor, check 4 @unpriv:OK torvalds#361/77 verifier_sdiv/SMOD32, non-zero reg divisor, check 5:OK torvalds#361/78 verifier_sdiv/SMOD32, non-zero reg divisor, check 5 @unpriv:OK torvalds#361/79 verifier_sdiv/SMOD32, non-zero reg divisor, check 6:OK torvalds#361/80 verifier_sdiv/SMOD32, non-zero reg divisor, check 6 @unpriv:OK torvalds#361/81 verifier_sdiv/SMOD64, non-zero imm divisor, check 1:OK torvalds#361/82 verifier_sdiv/SMOD64, non-zero imm divisor, check 1 @unpriv:OK torvalds#361/83 verifier_sdiv/SMOD64, non-zero imm divisor, check 2:OK torvalds#361/84 verifier_sdiv/SMOD64, non-zero imm divisor, check 2 @unpriv:OK torvalds#361/85 verifier_sdiv/SMOD64, non-zero imm divisor, check 3:OK torvalds#361/86 verifier_sdiv/SMOD64, non-zero imm divisor, check 3 @unpriv:OK torvalds#361/87 verifier_sdiv/SMOD64, non-zero imm divisor, check 4:OK torvalds#361/88 verifier_sdiv/SMOD64, non-zero imm divisor, check 4 @unpriv:OK torvalds#361/89 verifier_sdiv/SMOD64, non-zero imm divisor, check 5:OK torvalds#361/90 verifier_sdiv/SMOD64, non-zero imm divisor, check 5 @unpriv:OK torvalds#361/91 verifier_sdiv/SMOD64, non-zero imm divisor, check 6:OK torvalds#361/92 verifier_sdiv/SMOD64, non-zero imm divisor, check 6 @unpriv:OK torvalds#361/93 verifier_sdiv/SMOD64, non-zero imm divisor, check 7:OK torvalds#361/94 verifier_sdiv/SMOD64, non-zero imm divisor, check 7 @unpriv:OK torvalds#361/95 verifier_sdiv/SMOD64, non-zero imm divisor, check 8:OK torvalds#361/96 verifier_sdiv/SMOD64, non-zero imm divisor, check 8 @unpriv:OK torvalds#361/97 verifier_sdiv/SMOD64, non-zero reg divisor, check 1:OK torvalds#361/98 verifier_sdiv/SMOD64, non-zero reg divisor, check 1 @unpriv:OK torvalds#361/99 verifier_sdiv/SMOD64, non-zero reg divisor, check 2:OK torvalds#361/100 verifier_sdiv/SMOD64, non-zero reg divisor, check 2 @unpriv:OK torvalds#361/101 verifier_sdiv/SMOD64, non-zero reg divisor, check 3:OK torvalds#361/102 verifier_sdiv/SMOD64, non-zero reg divisor, check 3 @unpriv:OK torvalds#361/103 verifier_sdiv/SMOD64, non-zero reg divisor, check 4:OK torvalds#361/104 verifier_sdiv/SMOD64, non-zero reg divisor, check 4 @unpriv:OK torvalds#361/105 verifier_sdiv/SMOD64, non-zero reg divisor, check 5:OK torvalds#361/106 verifier_sdiv/SMOD64, non-zero reg divisor, check 5 @unpriv:OK torvalds#361/107 verifier_sdiv/SMOD64, non-zero reg divisor, check 6:OK torvalds#361/108 verifier_sdiv/SMOD64, non-zero reg divisor, check 6 @unpriv:OK torvalds#361/109 verifier_sdiv/SMOD64, non-zero reg divisor, check 7:OK torvalds#361/110 verifier_sdiv/SMOD64, non-zero reg divisor, check 7 @unpriv:OK torvalds#361/111 verifier_sdiv/SMOD64, non-zero reg divisor, check 8:OK torvalds#361/112 verifier_sdiv/SMOD64, non-zero reg divisor, check 8 @unpriv:OK torvalds#361/113 verifier_sdiv/SDIV32, zero divisor:OK torvalds#361/114 verifier_sdiv/SDIV32, zero divisor @unpriv:OK torvalds#361/115 verifier_sdiv/SDIV64, zero divisor:OK torvalds#361/116 verifier_sdiv/SDIV64, zero divisor @unpriv:OK torvalds#361/117 verifier_sdiv/SMOD32, zero divisor:OK torvalds#361/118 verifier_sdiv/SMOD32, zero divisor @unpriv:OK torvalds#361/119 verifier_sdiv/SMOD64, zero divisor:OK torvalds#361/120 verifier_sdiv/SMOD64, zero divisor @unpriv:OK torvalds#361 verifier_sdiv:OK Summary: 5/163 PASSED, 0 SKIPPED, 0 FAILED # ./test_progs -t ldsx_insn test_map_val_and_probed_memory:PASS:test_ldsx_insn__open 0 nsec test_map_val_and_probed_memory:PASS:test_ldsx_insn__load 0 nsec libbpf: prog 'test_ptr_struct_arg': failed to attach: ERROR: strerror_r(-524)=22 libbpf: prog 'test_ptr_struct_arg': failed to auto-attach: -524 test_map_val_and_probed_memory:FAIL:test_ldsx_insn__attach unexpected error: -524 (errno 524) #116/1 ldsx_insn/map_val and probed_memory:FAIL #116/2 ldsx_insn/ctx_member_sign_ext:OK #116/3 ldsx_insn/ctx_member_narrow_sign_ext:OK #116 ldsx_insn:FAIL All error logs: test_map_val_and_probed_memory:PASS:test_ldsx_insn__open 0 nsec test_map_val_and_probed_memory:PASS:test_ldsx_insn__load 0 nsec libbpf: prog 'test_ptr_struct_arg': failed to attach: ERROR: strerror_r(-524)=22 libbpf: prog 'test_ptr_struct_arg': failed to auto-attach: -524 test_map_val_and_probed_memory:FAIL:test_ldsx_insn__attach unexpected error: -524 (errno 524) #116/1 ldsx_insn/map_val and probed_memory:FAIL #116 ldsx_insn:FAIL Summary: 0/2 PASSED, 0 SKIPPED, 1 FAILED Signed-off-by: Hengqi Chen <hengqi.chen@gmail.com> Signed-off-by: Huacai Chen <chenhuacai@loongson.cn>
This change has been merged upstream, resolving. |
In case when is64 == 1 in emit(A64_REV32(is64, dst, dst), ctx) the generated insn reverses byte order for both high and low 32-bit words, resuling in an incorrect swap as indicated by the jit test: [ 9757.262607] test_bpf: #312 BSWAP 16: 0x0123456789abcdef -> 0xefcd jited:1 8 PASS [ 9757.264435] test_bpf: #313 BSWAP 32: 0x0123456789abcdef -> 0xefcdab89 jited:1 ret 1460850314 != -271733879 (0x5712ce8a != 0xefcdab89)FAIL (1 times) [ 9757.266260] test_bpf: #314 BSWAP 64: 0x0123456789abcdef -> 0x67452301 jited:1 8 PASS [ 9757.268000] test_bpf: #315 BSWAP 64: 0x0123456789abcdef >> 32 -> 0xefcdab89 jited:1 8 PASS [ 9757.269686] test_bpf: #316 BSWAP 16: 0xfedcba9876543210 -> 0x1032 jited:1 8 PASS [ 9757.271380] test_bpf: #317 BSWAP 32: 0xfedcba9876543210 -> 0x10325476 jited:1 ret -1460850316 != 271733878 (0xa8ed3174 != 0x10325476)FAIL (1 times) [ 9757.273022] test_bpf: #318 BSWAP 64: 0xfedcba9876543210 -> 0x98badcfe jited:1 7 PASS [ 9757.274721] test_bpf: #319 BSWAP 64: 0xfedcba9876543210 >> 32 -> 0x10325476 jited:1 9 PASS Fix this by forcing 32bit variant of rev32. Fixes: 1104247 ("bpf, arm64: Support unconditional bswap") Signed-off-by: Artem Savkov <asavkov@redhat.com> Tested-by: Puranjay Mohan <puranjay12@gmail.com> Acked-by: Puranjay Mohan <puranjay12@gmail.com> Acked-by: Xu Kuohai <xukuohai@huawei.com> Message-ID: <20240321081809.158803-1-asavkov@redhat.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org>
[ Upstream commit a51cd6b ] In case when is64 == 1 in emit(A64_REV32(is64, dst, dst), ctx) the generated insn reverses byte order for both high and low 32-bit words, resuling in an incorrect swap as indicated by the jit test: [ 9757.262607] test_bpf: #312 BSWAP 16: 0x0123456789abcdef -> 0xefcd jited:1 8 PASS [ 9757.264435] test_bpf: #313 BSWAP 32: 0x0123456789abcdef -> 0xefcdab89 jited:1 ret 1460850314 != -271733879 (0x5712ce8a != 0xefcdab89)FAIL (1 times) [ 9757.266260] test_bpf: #314 BSWAP 64: 0x0123456789abcdef -> 0x67452301 jited:1 8 PASS [ 9757.268000] test_bpf: #315 BSWAP 64: 0x0123456789abcdef >> 32 -> 0xefcdab89 jited:1 8 PASS [ 9757.269686] test_bpf: #316 BSWAP 16: 0xfedcba9876543210 -> 0x1032 jited:1 8 PASS [ 9757.271380] test_bpf: #317 BSWAP 32: 0xfedcba9876543210 -> 0x10325476 jited:1 ret -1460850316 != 271733878 (0xa8ed3174 != 0x10325476)FAIL (1 times) [ 9757.273022] test_bpf: #318 BSWAP 64: 0xfedcba9876543210 -> 0x98badcfe jited:1 7 PASS [ 9757.274721] test_bpf: #319 BSWAP 64: 0xfedcba9876543210 >> 32 -> 0x10325476 jited:1 9 PASS Fix this by forcing 32bit variant of rev32. Fixes: 1104247 ("bpf, arm64: Support unconditional bswap") Signed-off-by: Artem Savkov <asavkov@redhat.com> Tested-by: Puranjay Mohan <puranjay12@gmail.com> Acked-by: Puranjay Mohan <puranjay12@gmail.com> Acked-by: Xu Kuohai <xukuohai@huawei.com> Message-ID: <20240321081809.158803-1-asavkov@redhat.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
information about my computer.
The text was updated successfully, but these errors were encountered: