| /linux/tools/testing/selftests/arm64/fp/ |
| H A D | sve-ptrace.c | 124 struct user_sve_header *sve; in get_sve() local 126 size_t sz = sizeof(*sve); in get_sve() 150 sve = *buf; in get_sve() 151 if (sve->size <= sz) in get_sve() 154 sz = sve->size; in get_sve() 157 return sve; in get_sve() 164 const struct user_sve_header *sve) in set_sve() argument 169 iov.iov_base = (void *)sve; in set_sve() 170 iov.iov_len = sve->size; in set_sve() 195 struct user_sve_header sve; in write_fails() local [all …]
|
| H A D | Makefile | 11 sve-ptrace sve-probe-vls \ 16 rdvl-sme rdvl-sve \ 17 sve-test \ 23 TEST_PROGS_EXTENDED := fpsimd-stress sve-stress ssve-stress za-stress 33 $(OUTPUT)/rdvl-sve: rdvl-sve.c $(OUTPUT)/rdvl.o 35 $(OUTPUT)/sve-ptrace: sve-ptrace.c 36 $(OUTPUT)/sve-probe-vls: sve-probe-vls.c $(OUTPUT)/rdvl.o 37 $(OUTPUT)/sve-test: sve-test.S $(OUTPUT)/asm-utils.o 39 $(OUTPUT)/ssve-test: sve-test.S $(OUTPUT)/asm-utils.o
|
| H A D | README | 7 sve-probe-vls - Checks the SVE vector length enumeration interface 8 sve-ptrace - Checks the SVE ptrace interface 13 sve-stress performs an SVE context switch stress test, as described 17 "sve" in the following commands.) 25 $ ./sve-stress 67 To try to reproduce the bugs that we have been observing, sve-stress 73 $ lkvm run --console=virtio -pconsole=hvc0 --sve Image 88 2) Run the sve-stress on *each* guest with the Vector-Length set to 32: 89 guest$ ./vlset --inherit 32 ./sve-stress 91 3) Run the sve-stress on the host with the maximum Vector-Length: [all …]
|
| H A D | fp-ptrace.c | 401 struct user_sve_header *sve; in check_ptrace_values_sve() local 428 sve = iov.iov_base; in check_ptrace_values_sve() 430 if (sve->vl != config->sve_vl_in) { in check_ptrace_values_sve() 432 sve->vl, config->sve_vl_in); in check_ptrace_values_sve() 437 if ((config->svcr_in & SVCR_SM) && (sve->flags & SVE_PT_REGS_SVE)) { in check_ptrace_values_sve() 443 if (sve->size != sizeof(sve)) { in check_ptrace_values_sve() 448 if (sve->size != SVE_PT_SIZE(vq, sve->flags)) { in check_ptrace_values_sve() 450 sve->size, SVE_PT_SIZE(vq, sve->flags)); in check_ptrace_values_sve() 456 if (sve->flags & SVE_PT_REGS_SVE) { in check_ptrace_values_sve() 485 struct user_sve_header *sve; in check_ptrace_values_ssve() local [all …]
|
| H A D | .gitignore | 7 rdvl-sve 8 sve-probe-vls 9 sve-ptrace 10 sve-test
|
| H A D | rdvl.S | 6 .arch_extension sve
|
| H A D | sve-stress | 45 ./sve-test >$log &
|
| H A D | za-fork-asm.S | 6 .arch_extension sve
|
| H A D | fp-pidbench.S | 13 .arch_extension sve
|
| /linux/tools/testing/selftests/arm64/signal/testcases/ |
| H A D | testcases.c | 38 bool validate_sve_context(struct sve_context *sve, char **err) in validate_sve_context() argument 42 = ((SVE_SIG_CONTEXT_SIZE(sve_vq_from_vl(sve->vl)) + 15) / 16) * 16; in validate_sve_context() 44 if (!sve || !err) in validate_sve_context() 48 if ((sve->head.size != sizeof(struct sve_context)) && in validate_sve_context() 49 (sve->head.size != regs_size)) { in validate_sve_context() 54 if (!sve_vl_valid(sve->vl)) { in validate_sve_context() 115 struct sve_context *sve = NULL; in validate_reserved() local 176 sve = (struct sve_context *)head; in validate_reserved() 260 if (!validate_sve_context(sve, err)) in validate_reserved()
|
| H A D | sve_regs.c | 47 struct sve_context *sve; in do_one_sve_vl() local 71 sve = (struct sve_context *)head; in do_one_sve_vl() 72 if (sve->vl != vl) { in do_one_sve_vl() 73 fprintf(stderr, "Got VL %d, expected %d\n", sve->vl, vl); in do_one_sve_vl() 79 head->size, sve->vl); in do_one_sve_vl()
|
| H A D | sve_vl.c | 34 struct sve_context *sve; in sve_vl() local 46 sve = (struct sve_context *)head; in sve_vl() 48 if (sve->vl != vl) { in sve_vl() 50 sve->vl, vl); in sve_vl()
|
| H A D | fake_sigreturn_sve_change_vl.c | 38 struct sve_context *sve; in fake_sigreturn_sve_change_vl() local 56 sve = (struct sve_context *)head; in fake_sigreturn_sve_change_vl() 60 sve->vl, vls[0]); in fake_sigreturn_sve_change_vl() 61 sve->vl = vls[0]; in fake_sigreturn_sve_change_vl()
|
| /linux/tools/testing/selftests/arm64/abi/ |
| H A D | syscall-abi.c | 412 int sve, sme; in test_one_syscall() local 419 for (sve = 0; sve < sve_vl_count; sve++) { in test_one_syscall() 420 ret = prctl(PR_SVE_SET_VL, sve_vls[sve]); in test_one_syscall() 425 ksft_test_result(do_test(cfg, sve_vls[sve], default_sme_vl, 0), in test_one_syscall() 426 "%s SVE VL %d\n", cfg->name, sve_vls[sve]); in test_one_syscall() 434 ksft_test_result(do_test(cfg, sve_vls[sve], in test_one_syscall() 438 cfg->name, sve_vls[sve], in test_one_syscall() 440 ksft_test_result(do_test(cfg, sve_vls[sve], in test_one_syscall() 443 cfg->name, sve_vls[sve], in test_one_syscall() 445 ksft_test_result(do_test(cfg, sve_vls[sve], in test_one_syscall() [all …]
|
| H A D | syscall-abi-asm.S | 24 .arch_extension sve
|
| /linux/arch/arm64/kernel/ |
| H A D | signal.c | 235 struct sve_context __user *sve; member 406 if (user->sve_size < sizeof(*user->sve)) in restore_sve_fpsimd_context() 409 __get_user_error(user_vl, &(user->sve->vl), err); in restore_sve_fpsimd_context() 410 __get_user_error(flags, &(user->sve->flags), err); in restore_sve_fpsimd_context() 444 if (!sm && user->sve_size == sizeof(*user->sve)) in restore_sve_fpsimd_context() 475 (char __user const *)user->sve + in restore_sve_fpsimd_context() 765 user->sve = NULL; in parse_user_sigframe() 837 if (user->sve) in parse_user_sigframe() 840 user->sve = (struct sve_context __user *)head; in parse_user_sigframe() 1015 if (user.sve) in restore_sigframe()
|
| /linux/Documentation/translations/zh_CN/process/ |
| H A D | maintainer-pgp-guide.rst | 709 ✓ [PATCH v1 2/3] arm64/sve: Document our actual ABI for clearing registers on syscall
|
| /linux/Documentation/arch/arm64/ |
| H A D | sme.rst | 10 documentation in sve.rst which provides details on the Streaming SVE mode 266 sve.rst.
|
| /linux/Documentation/translations/it_IT/process/ |
| H A D | maintainer-pgp-guide.rst | 842 ✓ [PATCH v1 2/3] arm64/sve: Document our actual ABI for clearing registers on syscall
|
| /linux/Documentation/virt/kvm/ |
| H A D | api.rst | 2676 (See Documentation/arch/arm64/sve.rst for an explanation of the "vq"
|