KERNEL SELFTESTS: linux_headers_dir is /usr/src/linux-headers-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e 2022-04-29 21:55:33 ln -sf /usr/bin/clang 2022-04-29 21:55:33 ln -sf /usr/bin/llc 2022-04-29 21:55:33 sed -i s/default_timeout=45/default_timeout=300/ kselftest/runner.sh 2022-04-29 21:55:33 make -C x86 make: Entering directory '/usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86' gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/single_step_syscall_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 single_step_syscall.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/sysret_ss_attrs_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 sysret_ss_attrs.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/syscall_nt_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 syscall_nt.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/test_mremap_vdso_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 test_mremap_vdso.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/check_initial_reg_state_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -Wl,-ereal_start -static -DCAN_BUILD_32 -DCAN_BUILD_64 check_initial_reg_state.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/sigreturn_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 sigreturn.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/iopl_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 iopl.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/ioperm_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 ioperm.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/test_vsyscall_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 test_vsyscall.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/mov_ss_trap_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 mov_ss_trap.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/syscall_arg_fault_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 syscall_arg_fault.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/fsgsbase_restore_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 fsgsbase_restore.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/sigaltstack_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 sigaltstack.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/entry_from_vm86_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 entry_from_vm86.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/test_syscall_vdso_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 test_syscall_vdso.c helpers.h thunks_32.S -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/unwind_vdso_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 unwind_vdso.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/test_FCMOV_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 test_FCMOV.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/test_FCOMI_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 test_FCOMI.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/test_FISTTP_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 test_FISTTP.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/vdso_restorer_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 vdso_restorer.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/ldt_gdt_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 ldt_gdt.c helpers.h -lrt -ldl -lm gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/ptrace_syscall_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 ptrace_syscall.c helpers.h raw_syscall_helper_32.S -lrt -ldl -lm gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/single_step_syscall_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 single_step_syscall.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/sysret_ss_attrs_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 sysret_ss_attrs.c helpers.h thunks.S -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/syscall_nt_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 syscall_nt.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/test_mremap_vdso_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 test_mremap_vdso.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/check_initial_reg_state_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -Wl,-ereal_start -static -DCAN_BUILD_32 -DCAN_BUILD_64 check_initial_reg_state.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/sigreturn_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 sigreturn.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/iopl_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 iopl.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/ioperm_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 ioperm.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/test_vsyscall_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 test_vsyscall.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/mov_ss_trap_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 mov_ss_trap.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/syscall_arg_fault_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 syscall_arg_fault.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/fsgsbase_restore_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 fsgsbase_restore.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/sigaltstack_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 sigaltstack.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/fsgsbase_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 fsgsbase.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/sysret_rip_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 sysret_rip.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/syscall_numbering_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 syscall_numbering.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/corrupt_xstate_header_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 corrupt_xstate_header.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/amx_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 amx.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/ldt_gdt_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 ldt_gdt.c helpers.h -lrt -ldl gcc -m64 -o /usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86/ptrace_syscall_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 ptrace_syscall.c helpers.h -lrt -ldl make: Leaving directory '/usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86' 2022-04-29 21:55:43 make run_tests -C x86 make: Entering directory '/usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86' TAP version 13 1..42 # selftests: x86: single_step_syscall_32 # [RUN] Set TF and check nop # [OK] Survived with TF set and 15 traps # [RUN] Set TF and check int80 # [OK] Survived with TF set and 14 traps # [RUN] Set TF and check a fast syscall # [OK] Survived with TF set and 45 traps # [RUN] Fast syscall with TF cleared # [OK] Nothing unexpected happened # [RUN] Set TF and check SYSENTER # Got SIGSEGV with RIP=f7f68549, TF=256 # [RUN] Fast syscall with TF cleared # [OK] Nothing unexpected happened ok 1 selftests: x86: single_step_syscall_32 # selftests: x86: sysret_ss_attrs_32 # [WARN] sched_setaffinity failed # [RUN] Syscalls followed by SS validation # [OK] We survived ok 2 selftests: x86: sysret_ss_attrs_32 # selftests: x86: syscall_nt_32 # [RUN] Set NT and issue a syscall # [OK] The syscall worked and flags are still set # [RUN] Set AC and issue a syscall # [OK] The syscall worked and flags are still set # [RUN] Set NT|AC and issue a syscall # [OK] The syscall worked and flags are still set # [RUN] Set TF and issue a syscall # [OK] The syscall worked and flags are still set # [RUN] Set NT|TF and issue a syscall # [OK] The syscall worked and flags are still set # [RUN] Set AC|TF and issue a syscall # [OK] The syscall worked and flags are still set # [RUN] Set NT|AC|TF and issue a syscall # [OK] The syscall worked and flags are still set # [RUN] Set DF and issue a syscall # [OK] The syscall worked and flags are still set # [RUN] Set TF|DF and issue a syscall # [OK] The syscall worked and flags are still set ok 3 selftests: x86: syscall_nt_32 # selftests: x86: test_mremap_vdso_32 # AT_SYSINFO_EHDR is 0xf7ee2000 # [NOTE] Moving vDSO: [0xf7ee2000, 0xf7ee3000] -> [0xf7f0b000, 0xf7f0c000] # [NOTE] vDSO partial move failed, will try with bigger size # [NOTE] Moving vDSO: [0xf7ee2000, 0xf7ee4000] -> [0xf7eda000, 0xf7edc000] # [OK] ok 4 selftests: x86: test_mremap_vdso_32 # selftests: x86: check_initial_reg_state_32 # [OK] All GPRs except SP are 0 # [OK] FLAGS is 0x202 ok 5 selftests: x86: check_initial_reg_state_32 # selftests: x86: sigreturn_32 # [OK] set_thread_area refused 16-bit data # [OK] set_thread_area refused 16-bit data # [RUN] Valid sigreturn: 64-bit CS (33), 32-bit SS (2b, GDT) # [OK] all registers okay # [RUN] Valid sigreturn: 32-bit CS (23), 32-bit SS (2b, GDT) # [OK] all registers okay # [RUN] Valid sigreturn: 16-bit CS (37), 32-bit SS (2b, GDT) # [OK] all registers okay # [RUN] Valid sigreturn: 64-bit CS (33), 16-bit SS (3f) # [OK] all registers okay # [RUN] Valid sigreturn: 32-bit CS (23), 16-bit SS (3f) # [OK] all registers okay # [RUN] Valid sigreturn: 16-bit CS (37), 16-bit SS (3f) # [OK] all registers okay # [RUN] 64-bit CS (33), bogus SS (47) # [OK] Got #GP(0x0) (i.e. Segmentation fault) # [RUN] 32-bit CS (23), bogus SS (47) # [OK] Got #GP(0x0) (i.e. Segmentation fault) # [RUN] 16-bit CS (37), bogus SS (47) # [OK] Got #GP(0x0) (i.e. Segmentation fault) # [RUN] 64-bit CS (33), bogus SS (23) # [OK] Got #GP(0x20) (i.e. GDT index 4, Segmentation fault) # [RUN] 32-bit CS (23), bogus SS (23) # [OK] Got #GP(0x20) (i.e. GDT index 4, Segmentation fault) # [RUN] 16-bit CS (37), bogus SS (23) # [OK] Got #GP(0x20) (i.e. GDT index 4, Segmentation fault) # [RUN] 32-bit CS (4f), bogus SS (2b) # [OK] Got #NP(0x4c) (i.e. LDT index 9, Bus error) # [RUN] 32-bit CS (23), bogus SS (57) # [OK] Got #GP(0x0) (i.e. Segmentation fault) ok 6 selftests: x86: sigreturn_32 # selftests: x86: iopl_32 # iopl_32: sched_setaffinity to CPU 0: Invalid argument not ok 7 selftests: x86: iopl_32 # exit=1 # selftests: x86: ioperm_32 # ioperm_32: sched_setaffinity to CPU 0: Invalid argument not ok 8 selftests: x86: ioperm_32 # exit=1 # selftests: x86: test_vsyscall_32 # [NOTE] failed to find getcpu in vDSO # [RUN] test gettimeofday() # vDSO time offsets: 0.000011 0.000000 # [OK] vDSO gettimeofday()'s timeval was okay # [RUN] test time() # [OK] vDSO time() is okay # [RUN] getcpu() on CPU 0 # [SKIP] failed to force CPU 0 # [RUN] getcpu() on CPU 1 # [SKIP] failed to force CPU 1 ok 9 selftests: x86: test_vsyscall_32 # selftests: x86: mov_ss_trap_32 # SS = 0x2b, &SS = 0x0x804c11c # PR_SET_PTRACER_ANY succeeded # Set up a watchpoint # DR0 = 804c11c, DR1 = 80493d6, DR7 = 7000a # SS = 0x2b, &SS = 0x0x804c11c # PR_SET_PTRACER_ANY succeeded # Set up a watchpoint # [RUN] Read from watched memory (should get SIGTRAP) # Got SIGTRAP with RIP=804922c, EFLAGS.RF=0 # [RUN] MOV SS; INT3 # Got SIGTRAP with RIP=804923d, EFLAGS.RF=0 # [RUN] MOV SS; INT 3 # Got SIGTRAP with RIP=804924f, EFLAGS.RF=0 # [RUN] MOV SS; CS CS INT3 # Got SIGTRAP with RIP=8049262, EFLAGS.RF=0 # [RUN] MOV SS; CSx14 INT3 # Got SIGTRAP with RIP=8049281, EFLAGS.RF=0 # [RUN] MOV SS; INT 4 # Got SIGSEGV with RIP=80492ab # [RUN] MOV SS; INTO # Got SIGTRAP with RIP=80492db, EFLAGS.RF=0 # [RUN] MOV SS; ICEBP # Got SIGTRAP with RIP=8049326, EFLAGS.RF=0 # [RUN] MOV SS; CLI # Got SIGSEGV with RIP=8049659 # [RUN] MOV SS; #PF # Got SIGSEGV with RIP=804961b # [RUN] MOV SS; INT 1 # Got SIGSEGV with RIP=80493b6 # [RUN] MOV SS; breakpointed NOP # Got SIGTRAP with RIP=80493d7, EFLAGS.RF=0 # [RUN] MOV SS; SYSENTER # Got SIGSEGV with RIP=f7f27549 # [RUN] MOV SS; INT $0x80 # [OK] I aten't dead ok 10 selftests: x86: mov_ss_trap_32 # selftests: x86: syscall_arg_fault_32 # [RUN] SYSENTER with invalid state # [OK] Seems okay # [RUN] SYSCALL with invalid state # [SKIP] Illegal instruction # [RUN] SYSENTER with TF and invalid state # [OK] Seems okay # [RUN] SYSCALL with TF and invalid state # [SKIP] Illegal instruction ok 11 selftests: x86: syscall_arg_fault_32 # selftests: x86: fsgsbase_restore_32 # fsgsbase_restore_32: PTRACE_GETREGS: Input/output error # Setting up a segment # segment base address = 0xf7fb4000 # using LDT slot 0 # [OK] The segment points to the right place. # Child FS=0x7 # Tracer: redirecting tracee to tracee_zap_segment() not ok 12 selftests: x86: fsgsbase_restore_32 # exit=1 # selftests: x86: sigaltstack_32 # [RUN] Test an alternate signal stack of sufficient size. # Raise SIGALRM. It is expected to be delivered. # [OK] SIGALRM signal delivered. ok 13 selftests: x86: sigaltstack_32 # selftests: x86: entry_from_vm86_32 # [RUN] #BR from vm86 mode # [SKIP] vm86 not supported # [RUN] SYSENTER from vm86 mode # [SKIP] vm86 not supported # [RUN] SYSCALL from vm86 mode # [SKIP] vm86 not supported # [RUN] STI with VIP set from vm86 mode # [SKIP] vm86 not supported # [RUN] POPF with VIP set and IF clear from vm86 mode # [SKIP] vm86 not supported # [RUN] POPF with VIP and IF set from vm86 mode # [SKIP] vm86 not supported # [RUN] POPF with VIP clear and IF set from vm86 mode # [SKIP] vm86 not supported # [RUN] INT3 from vm86 mode # [SKIP] vm86 not supported # [RUN] int80 from vm86 mode # [SKIP] vm86 not supported # [RUN] UMIP tests from vm86 mode # [SKIP] vm86 not supported # [INFO] Result from SMSW:[0x0000] # [INFO] Result from SIDT: limit[0x0000]base[0x00000000] # [INFO] Result from SGDT: limit[0x0000]base[0x00000000] # [PASS] All the results from SMSW are identical. # [PASS] All the results from SGDT are identical. # [PASS] All the results from SIDT are identical. # [RUN] STR instruction from vm86 mode # [SKIP] vm86 not supported # [RUN] SLDT instruction from vm86 mode # [SKIP] vm86 not supported # [RUN] Execute null pointer from vm86 mode # [SKIP] vm86 not supported # [RUN] #BR from vm86 mode # [SKIP] vm86 not supported # [RUN] SYSENTER from vm86 mode # [SKIP] vm86 not supported # [RUN] SYSCALL from vm86 mode # [SKIP] vm86 not supported # [RUN] STI with VIP set from vm86 mode # [SKIP] vm86 not supported # [RUN] POPF with VIP set and IF clear from vm86 mode # [SKIP] vm86 not supported # [RUN] POPF with VIP and IF set from vm86 mode # [SKIP] vm86 not supported # [RUN] POPF with VIP clear and IF set from vm86 mode # [SKIP] vm86 not supported # [RUN] INT3 from vm86 mode # [SKIP] vm86 not supported # [RUN] int80 from vm86 mode # [SKIP] vm86 not supported # [RUN] UMIP tests from vm86 mode # [SKIP] vm86 not supported # [INFO] Result from SMSW:[0x0000] # [INFO] Result from SIDT: limit[0x0000]base[0x00000000] # [INFO] Result from SGDT: limit[0x0000]base[0x00000000] # [PASS] All the results from SMSW are identical. # [PASS] All the results from SGDT are identical. # [PASS] All the results from SIDT are identical. # [RUN] STR instruction from vm86 mode # [SKIP] vm86 not supported # [RUN] SLDT instruction from vm86 mode # [SKIP] vm86 not supported # [RUN] Execute null pointer from vm86 mode # [SKIP] vm86 not supported ok 14 selftests: x86: entry_from_vm86_32 # selftests: x86: test_syscall_vdso_32 # [RUN] Executing 6-argument 32-bit syscall via VDSO # [WARN] Flags before=0000000000200ed7 id 0 00 o d i s z 0 a 0 p 1 c # [WARN] Flags after=0000000000200686 id 0 00 d i s 0 0 p 1 # [WARN] Flags change=0000000000000851 0 00 o z 0 a 0 0 c # [OK] Arguments are preserved across syscall # [NOTE] R11 has changed:0000000000200686 - assuming clobbered by SYSRET insn # [OK] R8..R15 did not leak kernel data # [RUN] Executing 6-argument 32-bit syscall via INT 80 # [OK] Arguments are preserved across syscall # [OK] R8..R15 did not leak kernel data # [RUN] Executing 6-argument 32-bit syscall via VDSO # [WARN] Flags before=0000000000200ed7 id 0 00 o d i s z 0 a 0 p 1 c # [WARN] Flags after=0000000000200686 id 0 00 d i s 0 0 p 1 # [WARN] Flags change=0000000000000851 0 00 o z 0 a 0 0 c # [OK] Arguments are preserved across syscall # [NOTE] R11 has changed:0000000000200686 - assuming clobbered by SYSRET insn # [OK] R8..R15 did not leak kernel data # [RUN] Executing 6-argument 32-bit syscall via INT 80 # [OK] Arguments are preserved across syscall # [OK] R8..R15 did not leak kernel data # [RUN] Running tests under ptrace ok 15 selftests: x86: test_syscall_vdso_32 # selftests: x86: unwind_vdso_32 # AT_SYSINFO is 0xf7f0c540 # [OK] AT_SYSINFO maps to linux-gate.so.1, loaded at 0x0xf7f0c000 # [RUN] Set TF and check a fast syscall # In vsyscall at 0xf7f0c540, returning to 0xf7cf50f7 # SIGTRAP at 0xf7f0c540 # 0xf7f0c540 # 0xf7cf50f7 # [OK] NR = 20, args = 1, 2, 3, 4, 5, 6 # SIGTRAP at 0xf7f0c541 # 0xf7f0c541 # 0xf7cf50f7 # [OK] NR = 20, args = 1, 2, 3, 4, 5, 6 # SIGTRAP at 0xf7f0c542 # 0xf7f0c542 # 0xf7cf50f7 # [OK] NR = 20, args = 1, 2, 3, 4, 5, 6 # SIGTRAP at 0xf7f0c543 # 0xf7f0c543 # 0xf7cf50f7 # [OK] NR = 20, args = 1, 2, 3, 4, 5, 6 # SIGTRAP at 0xf7f0c545 # 0xf7f0c545 # 0xf7cf50f7 # [OK] NR = 20, args = 1, 2, 3, 4, 5, 6 # SIGTRAP at 0xf7f0c54a # 0xf7f0c54a # 0xf7cf50f7 # [OK] NR = 1926, args = 1, 2, 3, 4, 5, 6 # SIGTRAP at 0xf7f0c54b # 0xf7f0c54b # 0xf7cf50f7 # [OK] NR = 1926, args = 1, 2, 3, 4, 5, 6 # SIGTRAP at 0xf7f0c54c # 0xf7f0c54c # 0xf7cf50f7 # [OK] NR = 1926, args = 1, 2, 3, 4, 5, 6 # Vsyscall is done # [OK] All is well ok 16 selftests: x86: unwind_vdso_32 # selftests: x86: test_FCMOV_32 # [RUN] Testing fcmovCC instructions # [OK] fcmovCC ok 17 selftests: x86: test_FCMOV_32 # selftests: x86: test_FCOMI_32 # [RUN] Testing f[u]comi[p] instructions # [OK] f[u]comi[p] ok 18 selftests: x86: test_FCOMI_32 # selftests: x86: test_FISTTP_32 # [RUN] Testing fisttp instructions # [OK] fisttp ok 19 selftests: x86: test_FISTTP_32 # selftests: x86: vdso_restorer_32 # [RUN] Raise a signal, SA_SIGINFO, sa.restorer == NULL # [OK] SA_SIGINFO handler returned successfully # [RUN] Raise a signal, !SA_SIGINFO, sa.restorer == NULL # [OK] !SA_SIGINFO handler returned successfully ok 20 selftests: x86: vdso_restorer_32 # selftests: x86: ldt_gdt_32 # [NOTE] set_thread_area is available; will use GDT index 13 # [OK] LDT entry 0 has AR 0x0040FB00 and limit 0x0000000A # [OK] LDT entry 0 has AR 0x00C0FB00 and limit 0x0000AFFF # [OK] LDT entry 1 is invalid # [OK] LDT entry 2 has AR 0x00C0FB00 and limit 0x0000AFFF # [OK] LDT entry 1 is invalid # [OK] LDT entry 2 has AR 0x00C0FB00 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D0FB00 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D07B00 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00907B00 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D07300 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D07100 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D07500 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00507700 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507F00 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507D00 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507B00 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507900 and limit 0x0000000A # [RUN] Test fork # [OK] LDT entry 2 has AR 0x00507900 and limit 0x0000000A # [OK] LDT entry 1 is invalid # [OK] LDT entry 0 is invalid # [NOTE] set_thread_area is available; will use GDT index 13 # [OK] LDT entry 0 has AR 0x0040FB00 and limit 0x0000000A # [OK] LDT entry 0 has AR 0x00C0FB00 and limit 0x0000AFFF # [OK] LDT entry 1 is invalid # [OK] LDT entry 2 has AR 0x00C0FB00 and limit 0x0000AFFF # [OK] LDT entry 1 is invalid # [OK] LDT entry 2 has AR 0x00C0FB00 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D0FB00 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D07B00 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00907B00 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D07300 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D07100 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D07500 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00507700 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507F00 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507D00 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507B00 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507900 and limit 0x0000000A # [RUN] Test fork # [OK] Child succeeded # [RUN] Test size # [DONE] Size test # [OK] modify_ldt failure 22 # [OK] LDT entry 0 has AR 0x0000F300 and limit 0x00000000 # [OK] LDT entry 0 has AR 0x00007300 and limit 0x00000000 # [OK] LDT entry 0 has AR 0x0000F100 and limit 0x00000000 # [OK] LDT entry 0 has AR 0x00007300 and limit 0x00000000 # [OK] LDT entry 0 has AR 0x00007100 and limit 0x00000001 # [OK] LDT entry 0 has AR 0x00007100 and limit 0x00000000 # [OK] LDT entry 0 is invalid # [OK] LDT entry 0 has AR 0x0040F300 and limit 0x000FFFFF # [OK] GDT entry 13 has AR 0x0040F300 and limit 0x000FFFFF # [OK] LDT entry 0 has AR 0x00C0F300 and limit 0xFFFFFFFF # [OK] GDT entry 13 has AR 0x00C0F300 and limit 0xFFFFFFFF # [OK] LDT entry 0 has AR 0x00C0F100 and limit 0xFFFFFFFF # [OK] GDT entry 13 has AR 0x00C0F100 and limit 0xFFFFFFFF # [OK] LDT entry 0 has AR 0x00C0F700 and limit 0xFFFFFFFF # [OK] GDT entry 13 has AR 0x00C0F700 and limit 0xFFFFFFFF # [OK] LDT entry 0 has AR 0x00C0F500 and limit 0xFFFFFFFF # [OK] GDT entry 13 has AR 0x00C0F500 and limit 0xFFFFFFFF # [OK] LDT entry 0 is invalid # [SKIP] Cannot set affinity to CPU 1 # [RUN] Test exec # [OK] LDT entry 0 has AR 0x0040FB00 and limit 0x0000002A # [OK] Child succeeded # [OK] Invalidate DS with set_thread_area: new DS = 0x0 # [OK] Invalidate ES with set_thread_area: new ES = 0x0 # [OK] Invalidate FS with set_thread_area: new FS = 0x0 # [OK] Invalidate GS with set_thread_area: new GS = 0x0 ok 21 selftests: x86: ldt_gdt_32 # selftests: x86: ptrace_syscall_32 # ptrace_syscall_32: PTRACE_SETREGS: Input/output error # [RUN] Check int80 return regs # [OK] getpid() preserves regs # [OK] kill(getpid(), SIGUSR1) preserves regs # [RUN] Check AT_SYSINFO return regs # [OK] getpid() preserves regs # [OK] kill(getpid(), SIGUSR1) preserves regs # [RUN] ptrace-induced syscall restart # [RUN] SYSEMU # [OK] Initial nr and args are correct # [RUN] Restart the syscall (ip = 0xf7edb549) not ok 22 selftests: x86: ptrace_syscall_32 # exit=1 # selftests: x86: single_step_syscall_64 # [RUN] Set TF and check nop # [OK] Survived with TF set and 10 traps # [RUN] Set TF and check syscall-less opportunistic sysret # [OK] Survived with TF set and 12 traps # [RUN] Set TF and check int80 # [OK] Survived with TF set and 9 traps # [RUN] Set TF and check a fast syscall # [OK] Survived with TF set and 22 traps # [RUN] Fast syscall with TF cleared # [OK] Nothing unexpected happened # [RUN] Set TF and check SYSENTER # Got SIGSEGV with RIP=a4951549, TF=256 # [RUN] Fast syscall with TF cleared # [OK] Nothing unexpected happened ok 23 selftests: x86: single_step_syscall_64 # selftests: x86: sysret_ss_attrs_64 # [RUN] Syscalls followed by SS validation # [OK] We survived ok 24 selftests: x86: sysret_ss_attrs_64 # selftests: x86: syscall_nt_64 # [RUN] Set NT and issue a syscall # [OK] The syscall worked and flags are still set # [RUN] Set AC and issue a syscall # [OK] The syscall worked and flags are still set # [RUN] Set NT|AC and issue a syscall # [OK] The syscall worked and flags are still set # [RUN] Set TF and issue a syscall # [OK] The syscall worked and flags are still set # [RUN] Set NT|TF and issue a syscall # [OK] The syscall worked and flags are still set # [RUN] Set AC|TF and issue a syscall # [OK] The syscall worked and flags are still set # [RUN] Set NT|AC|TF and issue a syscall # [OK] The syscall worked and flags are still set # [RUN] Set DF and issue a syscall # [OK] The syscall worked and flags are still set # [RUN] Set TF|DF and issue a syscall # [OK] The syscall worked and flags are still set ok 25 selftests: x86: syscall_nt_64 # selftests: x86: test_mremap_vdso_64 # AT_SYSINFO_EHDR is 0x7fff0c230000 # [NOTE] Moving vDSO: [0x7fff0c230000, 0x7fff0c231000] -> [0x7f686176b000, 0x7f686176c000] # [NOTE] vDSO partial move failed, will try with bigger size # [NOTE] Moving vDSO: [0x7fff0c230000, 0x7fff0c232000] -> [0x7f686176a000, 0x7f686176c000] # [OK] ok 26 selftests: x86: test_mremap_vdso_64 # selftests: x86: check_initial_reg_state_64 # [OK] All GPRs except SP are 0 # [OK] FLAGS is 0x202 ok 27 selftests: x86: check_initial_reg_state_64 # selftests: x86: sigreturn_64 # [OK] set_thread_area refused 16-bit data # [OK] set_thread_area refused 16-bit data # [RUN] Valid sigreturn: 64-bit CS (33), 32-bit SS (2b, GDT) # [OK] all registers okay # [RUN] Valid sigreturn: 32-bit CS (23), 32-bit SS (2b, GDT) # [NOTE] SP: 8badf00d5aadc0de -> 5aadc0de # [OK] all registers okay # [RUN] Valid sigreturn: 16-bit CS (37), 32-bit SS (2b, GDT) # [NOTE] SP: 8badf00d5aadc0de -> 5aadc0de # [OK] all registers okay # [RUN] Valid sigreturn: 64-bit CS (33), 16-bit SS (3f) # [OK] all registers okay # [RUN] Valid sigreturn: 32-bit CS (23), 16-bit SS (3f) # [NOTE] SP: 8badf00d5aadc0de -> 5aadc0de # [OK] all registers okay # [RUN] Valid sigreturn: 16-bit CS (37), 16-bit SS (3f) # [NOTE] SP: 8badf00d5aadc0de -> 5aadc0de # [OK] all registers okay # [RUN] Valid sigreturn: 32-bit CS (23), 32-bit SS (2b, GDT) # Corrupting SS on return to 64-bit mode # [NOTE] SP: 8badf00d5aadc0de -> 5aadc0de # [OK] all registers okay # [RUN] Valid sigreturn: 32-bit CS (23), 16-bit SS (3f) # Corrupting SS on return to 64-bit mode # [NOTE] SP: 8badf00d5aadc0de -> 5aadc0de # [OK] all registers okay # [RUN] 64-bit CS (33), bogus SS (47) # [OK] Got #GP(0x0) (i.e. Segmentation fault) # [RUN] 32-bit CS (23), bogus SS (47) # [OK] Got #GP(0x0) (i.e. Segmentation fault) # [RUN] 16-bit CS (37), bogus SS (47) # [OK] Got #GP(0x0) (i.e. Segmentation fault) # [RUN] 64-bit CS (33), bogus SS (33) # [OK] Got #GP(0x30) (i.e. GDT index 6, Segmentation fault) # [RUN] 32-bit CS (23), bogus SS (33) # [OK] Got #GP(0x30) (i.e. GDT index 6, Segmentation fault) # [RUN] 16-bit CS (37), bogus SS (33) # [OK] Got #GP(0x30) (i.e. GDT index 6, Segmentation fault) # [RUN] 32-bit CS (4f), bogus SS (2b) # [OK] Got #NP(0x4c) (i.e. LDT index 9, Bus error) # [RUN] 32-bit CS (23), bogus SS (57) # [OK] Got #GP(0x0) (i.e. Segmentation fault) # [RUN] Clear UC_STRICT_RESTORE_SS and corrupt SS # [OK] It worked ok 28 selftests: x86: sigreturn_64 # selftests: x86: iopl_64 # [OK] CLI NOPped # [OK] STI NOPped # [OK] outb to 0x80 worked # [OK] outb to 0x80 worked # [OK] outb to 0xed failed # child: set IOPL to 3 # [RUN] child: write to 0x80 # [OK] CLI NOPped # [OK] STI NOPped # [OK] outb to 0x80 worked # [OK] outb to 0x80 worked # [OK] outb to 0xed failed # [OK] Child succeeded # [RUN] parent: write to 0x80 (should fail) # [OK] outb to 0x80 failed # [OK] CLI faulted # [OK] STI faulted # iopl(3) # Drop privileges # [RUN] iopl(3) unprivileged but with IOPL==3 # [RUN] iopl(0) unprivileged # [RUN] iopl(3) unprivileged # [OK] Failed as expected ok 29 selftests: x86: iopl_64 # selftests: x86: ioperm_64 # [OK] outb to 0x80 failed # [OK] outb to 0xed failed # [RUN] enable 0x80 # [OK] outb to 0x80 worked # [OK] outb to 0xed failed # [RUN] disable 0x80 # [OK] outb to 0x80 failed # [OK] outb to 0xed failed # [RUN] child: check that we inherited permissions # [OK] outb to 0x80 worked # [OK] outb to 0xed failed # [RUN] child: Extend permissions to 0x81 # [RUN] child: Drop permissions to 0x80 # [OK] outb to 0x80 failed # [OK] outb to 0x80 failed # [OK] outb to 0xed failed # [RUN] enable 0x80 # [OK] outb to 0x80 worked # [OK] outb to 0xed failed # [RUN] disable 0x80 # [OK] outb to 0x80 failed # [OK] outb to 0xed failed # [OK] Child succeeded # Verify that unsharing the bitmap worked # [OK] outb to 0x80 worked # Drop privileges # [RUN] disable 0x80 # [OK] it worked # [RUN] enable 0x80 again # [OK] it failed ok 30 selftests: x86: ioperm_64 # selftests: x86: test_vsyscall_64 # vsyscall map: ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall] # vsyscall permissions are r-x # [RUN] test gettimeofday() # vDSO time offsets: 0.000011 0.000003 # [OK] vDSO gettimeofday()'s timeval was okay # vsyscall time offsets: 0.000013 0.000001 # [OK] vsyscall gettimeofday()'s timeval was okay # [RUN] test time() # [OK] vDSO time() is okay # [OK] vsyscall time() is okay # [RUN] getcpu() on CPU 0 # [OK] vDSO reported correct CPU # [OK] vDSO reported correct node # [OK] vsyscall reported correct CPU # [OK] vsyscall reported correct node # [RUN] getcpu() on CPU 1 # [OK] vDSO reported correct CPU # [OK] vDSO reported correct node # [OK] vsyscall reported correct CPU # [OK] vsyscall reported correct node # [RUN] Checking read access to the vsyscall page # [OK] We have read access # [RUN] process_vm_readv() from vsyscall page # [OK] It worked and read correct data # [RUN] checking that vsyscalls are emulated # [OK] vsyscalls are emulated (1 instructions in vsyscall page) ok 31 selftests: x86: test_vsyscall_64 # selftests: x86: mov_ss_trap_64 # SS = 0x2b, &SS = 0x0x4041a8 # PR_SET_PTRACER_ANY succeeded # Set up a watchpoint # DR0 = 4041a8, DR1 = 401358, DR7 = 7000a # SS = 0x2b, &SS = 0x0x4041a8 # PR_SET_PTRACER_ANY succeeded # Set up a watchpoint # [RUN] Read from watched memory (should get SIGTRAP) # Got SIGTRAP with RIP=4011e8, EFLAGS.RF=0 # [RUN] MOV SS; INT3 # Got SIGTRAP with RIP=4011fb, EFLAGS.RF=0 # [RUN] MOV SS; INT 3 # Got SIGTRAP with RIP=40120f, EFLAGS.RF=0 # [RUN] MOV SS; CS CS INT3 # Got SIGTRAP with RIP=401224, EFLAGS.RF=0 # [RUN] MOV SS; CSx14 INT3 # Got SIGTRAP with RIP=401245, EFLAGS.RF=0 # [RUN] MOV SS; INT 4 # Got SIGSEGV with RIP=40126f # [RUN] MOV SS; ICEBP # Got SIGTRAP with RIP=4012ad, EFLAGS.RF=0 # [RUN] MOV SS; CLI # Got SIGSEGV with RIP=4015b9 # [RUN] MOV SS; #PF # Got SIGSEGV with RIP=401584 # [RUN] MOV SS; INT 1 # Got SIGSEGV with RIP=401555 # [RUN] MOV SS; SYSCALL # [RUN] MOV SS; breakpointed NOP # Got SIGTRAP with RIP=401359, EFLAGS.RF=0 # [RUN] MOV SS; SYSENTER # Got SIGSEGV with RIP=e4b89549 # [RUN] MOV SS; INT $0x80 # [OK] I aten't dead ok 32 selftests: x86: mov_ss_trap_64 # selftests: x86: syscall_arg_fault_64 # [RUN] SYSENTER with invalid state # [OK] Seems okay # [RUN] SYSCALL with invalid state # [OK] SYSCALL returned normally # [RUN] SYSENTER with TF and invalid state # [OK] Seems okay # [RUN] SYSCALL with TF and invalid state # [OK] SYSCALL returned normally # [RUN] SYSENTER with TF, invalid state, and GSBASE < 0 # [OK] Seems okay ok 33 selftests: x86: syscall_arg_fault_64 # selftests: x86: fsgsbase_restore_64 # fsgsbase_restore_64: PTRACE_GETREGS: Input/output error # Setting up a segment # segment base address = 0x4075c000 # using LDT slot 0 # [OK] The segment points to the right place. # Child GS=0x7, GSBASE=0x4075c000 # Tracer: redirecting tracee to tracee_zap_segment() not ok 34 selftests: x86: fsgsbase_restore_64 # exit=1 # selftests: x86: sigaltstack_64 # [RUN] Test an alternate signal stack of sufficient size. # Raise SIGALRM. It is expected to be delivered. # [OK] SIGALRM signal delivered. ok 35 selftests: x86: sigaltstack_64 # selftests: x86: fsgsbase_64 # [OK] GSBASE started at 1 # [RUN] Set GS = 0x7, read GSBASE # [OK] GSBASE reads as 0x1 with invalid GS # FSGSBASE instructions are enabled # [RUN] ARCH_SET_GS to 0x0 # [OK] GSBASE was set as expected (selector 0x0) # [OK] ARCH_GET_GS worked as expected (selector 0x0) # [RUN] ARCH_SET_GS to 0x1 # [OK] GSBASE was set as expected (selector 0x0) # [OK] ARCH_GET_GS worked as expected (selector 0x0) # [RUN] ARCH_SET_GS to 0x200000000 # [OK] GSBASE was set as expected (selector 0x0) # [OK] ARCH_GET_GS worked as expected (selector 0x0) # [RUN] ARCH_SET_GS to 0x0 # [OK] GSBASE was set as expected (selector 0x0) # [OK] ARCH_GET_GS worked as expected (selector 0x0) # [RUN] ARCH_SET_GS to 0x200000000 # [OK] GSBASE was set as expected (selector 0x0) # [OK] ARCH_GET_GS worked as expected (selector 0x0) # [RUN] ARCH_SET_GS to 0x1 # [OK] GSBASE was set as expected (selector 0x0) # [OK] ARCH_GET_GS worked as expected (selector 0x0) # [RUN] ARCH_SET_GS to 0x0 then mov 0 to %gs # [OK] GSBASE is 0x0 # [RUN] ARCH_SET_GS to 0x1 then mov 0 to %gs # [OK] GSBASE is 0x0 # [RUN] ARCH_SET_GS to 0x200000000 then mov 0 to %gs # [OK] GSBASE is 0x0 # [RUN] ARCH_SET_GS to 0x0 then mov 0 to %gs and schedule # [OK] GSBASE is 0x0 # [RUN] ARCH_SET_GS to 0x1 then mov 0 to %gs and schedule # [OK] GSBASE is 0x0 # [RUN] ARCH_SET_GS to 0x200000000 then mov 0 to %gs and schedule # [OK] GSBASE is 0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0x0 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x0/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0x0 # Before schedule, set selector to 0x1 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x1/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0x0 # Before schedule, set selector to 0x2 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x2/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0x0 # Before schedule, set selector to 0x3 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x3/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0x0 # Before schedule, set selector to 0x2b # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x2b/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0xa1fa5f343cb85fa4 # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x0/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0xa1fa5f343cb85fa4 # Before schedule, set selector to 0x1 # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x1/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0xa1fa5f343cb85fa4 # Before schedule, set selector to 0x2 # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x2/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0xa1fa5f343cb85fa4 # Before schedule, set selector to 0x3 # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x3/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0xa1fa5f343cb85fa4 # Before schedule, set selector to 0x2b # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x2b/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0x1 # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x0/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0x1 # Before schedule, set selector to 0x1 # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x1/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0x1 # Before schedule, set selector to 0x2 # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x2/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0x1 # Before schedule, set selector to 0x3 # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x3/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0x1 # Before schedule, set selector to 0x2b # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x2b/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0x200000000 # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x0/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0x200000000 # Before schedule, set selector to 0x1 # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x1/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0x200000000 # Before schedule, set selector to 0x2 # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x2/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0x200000000 # Before schedule, set selector to 0x3 # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x3/0x0 # [RUN] ARCH_SET_GS(0x0), then schedule to 0x200000000 # Before schedule, set selector to 0x2b # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x2b/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0x0 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x0/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0x0 # Before schedule, set selector to 0x1 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x1/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0x0 # Before schedule, set selector to 0x2 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x2/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0x0 # Before schedule, set selector to 0x3 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x3/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0x0 # Before schedule, set selector to 0x2b # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x2b/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0xa1fa5f343cb85fa4 # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x0/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0xa1fa5f343cb85fa4 # Before schedule, set selector to 0x1 # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x1/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0xa1fa5f343cb85fa4 # Before schedule, set selector to 0x2 # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x2/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0xa1fa5f343cb85fa4 # Before schedule, set selector to 0x3 # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x3/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0xa1fa5f343cb85fa4 # Before schedule, set selector to 0x2b # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x2b/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0x1 # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x0/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0x1 # Before schedule, set selector to 0x1 # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x1/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0x1 # Before schedule, set selector to 0x2 # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x2/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0x1 # Before schedule, set selector to 0x3 # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x3/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0x1 # Before schedule, set selector to 0x2b # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x2b/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0x200000000 # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x0/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0x200000000 # Before schedule, set selector to 0x1 # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x1/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0x200000000 # Before schedule, set selector to 0x2 # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x2/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0x200000000 # Before schedule, set selector to 0x3 # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x3/0x0 # [RUN] ARCH_SET_GS(0x0) and clear gs, then schedule to 0x200000000 # Before schedule, set selector to 0x2b # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x2b/0x0 # [RUN] ARCH_SET_GS(0x1), then schedule to 0x0 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x0/0x1 # [RUN] ARCH_SET_GS(0x1), then schedule to 0x0 # Before schedule, set selector to 0x1 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x1/0x0 # [RUN] ARCH_SET_GS(0x1), then schedule to 0x0 # Before schedule, set selector to 0x2 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x2/0x0 # [RUN] ARCH_SET_GS(0x1), then schedule to 0x0 # Before schedule, set selector to 0x3 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x3/0x0 # [RUN] ARCH_SET_GS(0x1), then schedule to 0x0 # Before schedule, set selector to 0x2b # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x2b/0x0 # [RUN] ARCH_SET_GS(0x1), then schedule to 0xa1fa5f343cb85fa4 # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x0/0x1 # [RUN] ARCH_SET_GS(0x1), then schedule to 0xa1fa5f343cb85fa4 # Before schedule, set selector to 0x1 # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x1/0x0 # [RUN] ARCH_SET_GS(0x1), then schedule to 0xa1fa5f343cb85fa4 # Before schedule, set selector to 0x2 # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x2/0x0 # [RUN] ARCH_SET_GS(0x1), then schedule to 0xa1fa5f343cb85fa4 # Before schedule, set selector to 0x3 # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x3/0x0 # [RUN] ARCH_SET_GS(0x1), then schedule to 0xa1fa5f343cb85fa4 # Before schedule, set selector to 0x2b # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x2b/0x0 # [RUN] ARCH_SET_GS(0x1), then schedule to 0x1 # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x0/0x1 # [RUN] ARCH_SET_GS(0x1), then schedule to 0x1 # Before schedule, set selector to 0x1 # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x1/0x0 # [RUN] ARCH_SET_GS(0x1), then schedule to 0x1 # Before schedule, set selector to 0x2 # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x2/0x0 # [RUN] ARCH_SET_GS(0x1), then schedule to 0x1 # Before schedule, set selector to 0x3 # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x3/0x0 # [RUN] ARCH_SET_GS(0x1), then schedule to 0x1 # Before schedule, set selector to 0x2b # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x2b/0x0 # [RUN] ARCH_SET_GS(0x1), then schedule to 0x200000000 # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x0/0x1 # [RUN] ARCH_SET_GS(0x1), then schedule to 0x200000000 # Before schedule, set selector to 0x1 # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x1/0x0 # [RUN] ARCH_SET_GS(0x1), then schedule to 0x200000000 # Before schedule, set selector to 0x2 # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x2/0x0 # [RUN] ARCH_SET_GS(0x1), then schedule to 0x200000000 # Before schedule, set selector to 0x3 # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x3/0x0 # [RUN] ARCH_SET_GS(0x1), then schedule to 0x200000000 # Before schedule, set selector to 0x2b # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x2b/0x0 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0x0 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x0/0x200000000 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0x0 # Before schedule, set selector to 0x1 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x1/0x0 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0x0 # Before schedule, set selector to 0x2 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x2/0x0 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0x0 # Before schedule, set selector to 0x3 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x3/0x0 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0x0 # Before schedule, set selector to 0x2b # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] GS/BASE remained 0x2b/0x0 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0xa1fa5f343cb85fa4 # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x0/0x200000000 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0xa1fa5f343cb85fa4 # Before schedule, set selector to 0x1 # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x1/0x0 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0xa1fa5f343cb85fa4 # Before schedule, set selector to 0x2 # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x2/0x0 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0xa1fa5f343cb85fa4 # Before schedule, set selector to 0x3 # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x3/0x0 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0xa1fa5f343cb85fa4 # Before schedule, set selector to 0x2b # other thread: ARCH_SET_GS(0x0) and clear gs -- sel is 0x0 # [OK] GS/BASE remained 0x2b/0x0 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0x1 # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x0/0x200000000 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0x1 # Before schedule, set selector to 0x1 # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x1/0x0 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0x1 # Before schedule, set selector to 0x2 # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x2/0x0 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0x1 # Before schedule, set selector to 0x3 # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x3/0x0 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0x1 # Before schedule, set selector to 0x2b # other thread: ARCH_SET_GS(0x1) -- sel is 0x0 # [OK] GS/BASE remained 0x2b/0x0 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0x200000000 # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x0/0x200000000 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0x200000000 # Before schedule, set selector to 0x1 # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x1/0x0 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0x200000000 # Before schedule, set selector to 0x2 # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x2/0x0 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0x200000000 # Before schedule, set selector to 0x3 # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x3/0x0 # [RUN] ARCH_SET_GS(0x200000000), then schedule to 0x200000000 # Before schedule, set selector to 0x2b # other thread: ARCH_SET_GS(0x200000000) -- sel is 0x0 # [OK] GS/BASE remained 0x2b/0x0 # [RUN] ARCH_SET_GS(0), clear gs, then manipulate GSBASE in a different thread # using LDT slot 0 # [OK] GSBASE remained 0 # [RUN] GS = 0x0, GSBASE = 0x0 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] Index and base were preserved # [RUN] GS = 0x0, GSBASE = 0x1 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] Index and base were preserved # [RUN] GS = 0x0, GSBASE = 0x200000000 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] Index and base were preserved # [RUN] GS = 0x0, GSBASE = 0xffffffffffffffff # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] Index and base were preserved # [RUN] GS = 0x2b, GSBASE = 0x0 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] Index and base were preserved # [RUN] GS = 0x2b, GSBASE = 0x1 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] Index and base were preserved # [RUN] GS = 0x2b, GSBASE = 0x200000000 # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] Index and base were preserved # [RUN] GS = 0x2b, GSBASE = 0xffffffffffffffff # other thread: ARCH_SET_GS(0x0) -- sel is 0x0 # [OK] Index and base were preserved # [OK] GS remained 0x7 and GSBASE changed to 0xFF ok 36 selftests: x86: fsgsbase_64 # selftests: x86: sysret_rip_64 # [RUN] sigreturn to 0x800000000000 # [OK] Got SIGSEGV at RIP=0x800000000000 # [RUN] sigreturn to 0x1000000000000 # [OK] Got SIGSEGV at RIP=0x1000000000000 # [RUN] sigreturn to 0x2000000000000 # [OK] Got SIGSEGV at RIP=0x2000000000000 # [RUN] sigreturn to 0x4000000000000 # [OK] Got SIGSEGV at RIP=0x4000000000000 # [RUN] sigreturn to 0x8000000000000 # [OK] Got SIGSEGV at RIP=0x8000000000000 # [RUN] sigreturn to 0x10000000000000 # [OK] Got SIGSEGV at RIP=0x10000000000000 # [RUN] sigreturn to 0x20000000000000 # [OK] Got SIGSEGV at RIP=0x20000000000000 # [RUN] sigreturn to 0x40000000000000 # [OK] Got SIGSEGV at RIP=0x40000000000000 # [RUN] sigreturn to 0x80000000000000 # [OK] Got SIGSEGV at RIP=0x80000000000000 # [RUN] sigreturn to 0x100000000000000 # [OK] Got SIGSEGV at RIP=0x100000000000000 # [RUN] sigreturn to 0x200000000000000 # [OK] Got SIGSEGV at RIP=0x200000000000000 # [RUN] sigreturn to 0x400000000000000 # [OK] Got SIGSEGV at RIP=0x400000000000000 # [RUN] sigreturn to 0x800000000000000 # [OK] Got SIGSEGV at RIP=0x800000000000000 # [RUN] sigreturn to 0x1000000000000000 # [OK] Got SIGSEGV at RIP=0x1000000000000000 # [RUN] sigreturn to 0x2000000000000000 # [OK] Got SIGSEGV at RIP=0x2000000000000000 # [RUN] sigreturn to 0x4000000000000000 # [OK] Got SIGSEGV at RIP=0x4000000000000000 # [RUN] sigreturn to 0x8000000000000000 # [OK] Got SIGSEGV at RIP=0x8000000000000000 # [RUN] Trying a SYSCALL that falls through to 0x7fffffffe000 # [OK] We survived # [RUN] Trying a SYSCALL that falls through to 0x7ffffffff000 # [OK] We survived # [RUN] Trying a SYSCALL that falls through to 0x800000000000 # [OK] mremap to 0x7ffffffff000 failed # [RUN] Trying a SYSCALL that falls through to 0xfffffffff000 # [OK] mremap to 0xffffffffe000 failed # [RUN] Trying a SYSCALL that falls through to 0x1000000000000 # [OK] mremap to 0xfffffffff000 failed # [RUN] Trying a SYSCALL that falls through to 0x1fffffffff000 # [OK] mremap to 0x1ffffffffe000 failed # [RUN] Trying a SYSCALL that falls through to 0x2000000000000 # [OK] mremap to 0x1fffffffff000 failed # [RUN] Trying a SYSCALL that falls through to 0x3fffffffff000 # [OK] mremap to 0x3ffffffffe000 failed # [RUN] Trying a SYSCALL that falls through to 0x4000000000000 # [OK] mremap to 0x3fffffffff000 failed # [RUN] Trying a SYSCALL that falls through to 0x7fffffffff000 # [OK] mremap to 0x7ffffffffe000 failed # [RUN] Trying a SYSCALL that falls through to 0x8000000000000 # [OK] mremap to 0x7fffffffff000 failed # [RUN] Trying a SYSCALL that falls through to 0xffffffffff000 # [OK] mremap to 0xfffffffffe000 failed # [RUN] Trying a SYSCALL that falls through to 0x10000000000000 # [OK] mremap to 0xffffffffff000 failed # [RUN] Trying a SYSCALL that falls through to 0x1ffffffffff000 # [OK] mremap to 0x1fffffffffe000 failed # [RUN] Trying a SYSCALL that falls through to 0x20000000000000 # [OK] mremap to 0x1ffffffffff000 failed # [RUN] Trying a SYSCALL that falls through to 0x3ffffffffff000 # [OK] mremap to 0x3fffffffffe000 failed # [RUN] Trying a SYSCALL that falls through to 0x40000000000000 # [OK] mremap to 0x3ffffffffff000 failed # [RUN] Trying a SYSCALL that falls through to 0x7ffffffffff000 # [OK] mremap to 0x7fffffffffe000 failed # [RUN] Trying a SYSCALL that falls through to 0x80000000000000 # [OK] mremap to 0x7ffffffffff000 failed # [RUN] Trying a SYSCALL that falls through to 0xfffffffffff000 # [OK] mremap to 0xffffffffffe000 failed # [RUN] Trying a SYSCALL that falls through to 0x100000000000000 # [OK] mremap to 0xfffffffffff000 failed # [RUN] Trying a SYSCALL that falls through to 0x1fffffffffff000 # [OK] mremap to 0x1ffffffffffe000 failed # [RUN] Trying a SYSCALL that falls through to 0x200000000000000 # [OK] mremap to 0x1fffffffffff000 failed # [RUN] Trying a SYSCALL that falls through to 0x3fffffffffff000 # [OK] mremap to 0x3ffffffffffe000 failed # [RUN] Trying a SYSCALL that falls through to 0x400000000000000 # [OK] mremap to 0x3fffffffffff000 failed # [RUN] Trying a SYSCALL that falls through to 0x7fffffffffff000 # [OK] mremap to 0x7ffffffffffe000 failed # [RUN] Trying a SYSCALL that falls through to 0x800000000000000 # [OK] mremap to 0x7fffffffffff000 failed # [RUN] Trying a SYSCALL that falls through to 0xffffffffffff000 # [OK] mremap to 0xfffffffffffe000 failed # [RUN] Trying a SYSCALL that falls through to 0x1000000000000000 # [OK] mremap to 0xffffffffffff000 failed # [RUN] Trying a SYSCALL that falls through to 0x1ffffffffffff000 # [OK] mremap to 0x1fffffffffffe000 failed # [RUN] Trying a SYSCALL that falls through to 0x2000000000000000 # [OK] mremap to 0x1ffffffffffff000 failed # [RUN] Trying a SYSCALL that falls through to 0x3ffffffffffff000 # [OK] mremap to 0x3fffffffffffe000 failed # [RUN] Trying a SYSCALL that falls through to 0x4000000000000000 # [OK] mremap to 0x3ffffffffffff000 failed # [RUN] Trying a SYSCALL that falls through to 0x7ffffffffffff000 # [OK] mremap to 0x7fffffffffffe000 failed # [RUN] Trying a SYSCALL that falls through to 0x8000000000000000 # [OK] mremap to 0x7ffffffffffff000 failed ok 37 selftests: x86: sysret_rip_64 # selftests: x86: syscall_numbering_64 # [RUN] Checking for x32 by calling x32 getpid() # [INFO] x32 is not supported # [RUN] Running tests without ptrace... # [RUN] Checking system calls with msb = 0 (0x0) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 0:0 returned 0 as expected # [OK] x64 syscall 0:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 0:19 returned 0 as expected # [OK] x64 syscall 0:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 0:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 0:-1 returned -ENOSYS as expected # [OK] x64 syscalls 0:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 0:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 0:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 0:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = 1 (0x1) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 1:0 returned 0 as expected # [OK] x64 syscall 1:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 1:19 returned 0 as expected # [OK] x64 syscall 1:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 1:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 1:-1 returned -ENOSYS as expected # [OK] x64 syscalls 1:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 1:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 1:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 1:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = -1 (0xffffffff) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall -1:0 returned 0 as expected # [OK] x64 syscall -1:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall -1:19 returned 0 as expected # [OK] x64 syscall -1:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls -1:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall -1:-1 returned -ENOSYS as expected # [OK] x64 syscalls -1:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls -1:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls -1:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls -1:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = 1073741823 (0x3fffffff) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 1073741823:0 returned 0 as expected # [OK] x64 syscall 1073741823:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 1073741823:19 returned 0 as expected # [OK] x64 syscall 1073741823:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 1073741823:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 1073741823:-1 returned -ENOSYS as expected # [OK] x64 syscalls 1073741823:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 1073741823:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 1073741823:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 1073741823:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = 1073741824 (0x40000000) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 1073741824:0 returned 0 as expected # [OK] x64 syscall 1073741824:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 1073741824:19 returned 0 as expected # [OK] x64 syscall 1073741824:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 1073741824:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 1073741824:-1 returned -ENOSYS as expected # [OK] x64 syscalls 1073741824:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 1073741824:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 1073741824:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 1073741824:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = 1073741823 (0x3fffffff) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 1073741823:0 returned 0 as expected # [OK] x64 syscall 1073741823:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 1073741823:19 returned 0 as expected # [OK] x64 syscall 1073741823:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 1073741823:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 1073741823:-1 returned -ENOSYS as expected # [OK] x64 syscalls 1073741823:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 1073741823:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 1073741823:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 1073741823:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = -1073741824 (0xc0000000) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall -1073741824:0 returned 0 as expected # [OK] x64 syscall -1073741824:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall -1073741824:19 returned 0 as expected # [OK] x64 syscall -1073741824:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls -1073741824:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall -1073741824:-1 returned -ENOSYS as expected # [OK] x64 syscalls -1073741824:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls -1073741824:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls -1073741824:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls -1073741824:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = 2147483647 (0x7fffffff) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 2147483647:0 returned 0 as expected # [OK] x64 syscall 2147483647:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 2147483647:19 returned 0 as expected # [OK] x64 syscall 2147483647:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 2147483647:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 2147483647:-1 returned -ENOSYS as expected # [OK] x64 syscalls 2147483647:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 2147483647:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 2147483647:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 2147483647:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = -2147483648 (0x80000000) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall -2147483648:0 returned 0 as expected # [OK] x64 syscall -2147483648:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall -2147483648:19 returned 0 as expected # [OK] x64 syscall -2147483648:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls -2147483648:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall -2147483648:-1 returned -ENOSYS as expected # [OK] x64 syscalls -2147483648:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls -2147483648:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls -2147483648:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls -2147483648:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = -2147483647 (0x80000001) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall -2147483647:0 returned 0 as expected # [OK] x64 syscall -2147483647:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall -2147483647:19 returned 0 as expected # [OK] x64 syscall -2147483647:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls -2147483647:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall -2147483647:-1 returned -ENOSYS as expected # [OK] x64 syscalls -2147483647:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls -2147483647:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls -2147483647:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls -2147483647:0..999 returned -ENOSYS as expected # [RUN] Running tests under ptrace: just stop, no data read # [RUN] Checking system calls with msb = 0 (0x0) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 0:0 returned 0 as expected # [OK] x64 syscall 0:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 0:19 returned 0 as expected # [OK] x64 syscall 0:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 0:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 0:-1 returned -ENOSYS as expected # [OK] x64 syscalls 0:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 0:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 0:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 0:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = 1 (0x1) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 1:0 returned 0 as expected # [OK] x64 syscall 1:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 1:19 returned 0 as expected # [OK] x64 syscall 1:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 1:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 1:-1 returned -ENOSYS as expected # [OK] x64 syscalls 1:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 1:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 1:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 1:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = -1 (0xffffffff) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall -1:0 returned 0 as expected # [OK] x64 syscall -1:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall -1:19 returned 0 as expected # [OK] x64 syscall -1:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls -1:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall -1:-1 returned -ENOSYS as expected # [OK] x64 syscalls -1:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls -1:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls -1:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls -1:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = 1073741823 (0x3fffffff) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 1073741823:0 returned 0 as expected # [OK] x64 syscall 1073741823:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 1073741823:19 returned 0 as expected # [OK] x64 syscall 1073741823:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 1073741823:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 1073741823:-1 returned -ENOSYS as expected # [OK] x64 syscalls 1073741823:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 1073741823:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 1073741823:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 1073741823:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = 1073741824 (0x40000000) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 1073741824:0 returned 0 as expected # [OK] x64 syscall 1073741824:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 1073741824:19 returned 0 as expected # [OK] x64 syscall 1073741824:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 1073741824:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 1073741824:-1 returned -ENOSYS as expected # [OK] x64 syscalls 1073741824:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 1073741824:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 1073741824:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 1073741824:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = 1073741823 (0x3fffffff) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 1073741823:0 returned 0 as expected # [OK] x64 syscall 1073741823:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 1073741823:19 returned 0 as expected # [OK] x64 syscall 1073741823:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 1073741823:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 1073741823:-1 returned -ENOSYS as expected # [OK] x64 syscalls 1073741823:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 1073741823:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 1073741823:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 1073741823:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = -1073741824 (0xc0000000) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall -1073741824:0 returned 0 as expected # [OK] x64 syscall -1073741824:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall -1073741824:19 returned 0 as expected # [OK] x64 syscall -1073741824:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls -1073741824:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall -1073741824:-1 returned -ENOSYS as expected # [OK] x64 syscalls -1073741824:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls -1073741824:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls -1073741824:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls -1073741824:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = 2147483647 (0x7fffffff) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 2147483647:0 returned 0 as expected # [OK] x64 syscall 2147483647:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 2147483647:19 returned 0 as expected # [OK] x64 syscall 2147483647:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 2147483647:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 2147483647:-1 returned -ENOSYS as expected # [OK] x64 syscalls 2147483647:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 2147483647:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 2147483647:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 2147483647:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = -2147483648 (0x80000000) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall -2147483648:0 returned 0 as expected # [OK] x64 syscall -2147483648:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall -2147483648:19 returned 0 as expected # [OK] x64 syscall -2147483648:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls -2147483648:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall -2147483648:-1 returned -ENOSYS as expected # [OK] x64 syscalls -2147483648:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls -2147483648:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls -2147483648:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls -2147483648:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = -2147483647 (0x80000001) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall -2147483647:0 returned 0 as expected # [OK] x64 syscall -2147483647:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall -2147483647:19 returned 0 as expected # [OK] x64 syscall -2147483647:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls -2147483647:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall -2147483647:-1 returned -ENOSYS as expected # [OK] x64 syscalls -2147483647:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls -2147483647:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls -2147483647:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls -2147483647:0..999 returned -ENOSYS as expected # [RUN] Running tests under ptrace: only getregs # [RUN] Checking system calls with msb = 0 (0x0) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 0:0 returned 0 as expected # [OK] x64 syscall 0:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 0:19 returned 0 as expected # [OK] x64 syscall 0:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 0:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 0:-1 returned -ENOSYS as expected # [OK] x64 syscalls 0:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 0:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 0:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 0:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = 1 (0x1) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 1:0 returned 0 as expected # [OK] x64 syscall 1:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 1:19 returned 0 as expected # [OK] x64 syscall 1:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 1:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 1:-1 returned -ENOSYS as expected # [OK] x64 syscalls 1:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 1:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 1:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 1:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = -1 (0xffffffff) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall -1:0 returned 0 as expected # [OK] x64 syscall -1:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall -1:19 returned 0 as expected # [OK] x64 syscall -1:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls -1:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall -1:-1 returned -ENOSYS as expected # [OK] x64 syscalls -1:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls -1:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls -1:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls -1:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = 1073741823 (0x3fffffff) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 1073741823:0 returned 0 as expected # [OK] x64 syscall 1073741823:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 1073741823:19 returned 0 as expected # [OK] x64 syscall 1073741823:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 1073741823:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 1073741823:-1 returned -ENOSYS as expected # [OK] x64 syscalls 1073741823:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 1073741823:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 1073741823:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 1073741823:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = 1073741824 (0x40000000) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 1073741824:0 returned 0 as expected # [OK] x64 syscall 1073741824:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 1073741824:19 returned 0 as expected # [OK] x64 syscall 1073741824:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 1073741824:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 1073741824:-1 returned -ENOSYS as expected # [OK] x64 syscalls 1073741824:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 1073741824:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 1073741824:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 1073741824:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = 1073741823 (0x3fffffff) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 1073741823:0 returned 0 as expected # [OK] x64 syscall 1073741823:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 1073741823:19 returned 0 as expected # [OK] x64 syscall 1073741823:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 1073741823:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 1073741823:-1 returned -ENOSYS as expected # [OK] x64 syscalls 1073741823:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 1073741823:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 1073741823:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 1073741823:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = -1073741824 (0xc0000000) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall -1073741824:0 returned 0 as expected # [OK] x64 syscall -1073741824:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall -1073741824:19 returned 0 as expected # [OK] x64 syscall -1073741824:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls -1073741824:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall -1073741824:-1 returned -ENOSYS as expected # [OK] x64 syscalls -1073741824:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls -1073741824:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls -1073741824:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls -1073741824:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = 2147483647 (0x7fffffff) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall 2147483647:0 returned 0 as expected # [OK] x64 syscall 2147483647:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall 2147483647:19 returned 0 as expected # [OK] x64 syscall 2147483647:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls 2147483647:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall 2147483647:-1 returned -ENOSYS as expected # [OK] x64 syscalls 2147483647:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls 2147483647:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls 2147483647:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls 2147483647:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = -2147483648 (0x80000000) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall -2147483648:0 returned 0 as expected # [OK] x64 syscall -2147483648:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall -2147483648:19 returned 0 as expected # [OK] x64 syscall -2147483648:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls -2147483648:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall -2147483648:-1 returned -ENOSYS as expected # [OK] x64 syscalls -2147483648:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls -2147483648:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls -2147483648:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls -2147483648:0..999 returned -ENOSYS as expected # [RUN] Checking system calls with msb = -2147483647 (0x80000001) # [RUN] Checking some common syscalls as 64 bit # [OK] x64 syscall -2147483647:0 returned 0 as expected # [OK] x64 syscall -2147483647:1 returned 0 as expected # [RUN] Checking some 64-bit only syscalls as 64 bit # [OK] x64 syscall -2147483647:19 returned 0 as expected # [OK] x64 syscall -2147483647:20 returned 0 as expected # [RUN] Checking out of range system calls # [OK] x32 syscalls -2147483647:-64..-2 returned -ENOSYS as expected # [OK] x32 syscall -2147483647:-1 returned -ENOSYS as expected # [OK] x64 syscalls -2147483647:1073741760..1073741823 returned -ENOSYS as expected # [OK] x64 syscalls -2147483647:-64..-1 returned -ENOSYS as expected # [OK] x32 syscalls -2147483647:1073741759..1073741822 returned -ENOSYS as expected # [RUN] Checking for absence of x32 system calls # [OK] x32 syscalls -2147483647:0..999 returned -ENOSYS as expected # [RUN] Running tests under ptrace: getregs, unmodified setregs # [RUN] Checking system calls with msb = 0 (0x0) # [RUN] Checking some common syscalls as 64 bit # not ok 38 selftests: x86: syscall_numbering_64 # TIMEOUT 300 seconds # selftests: x86: corrupt_xstate_header_64 # [RUN] Send ourselves a signal # Wreck XSTATE header # Got SIGSEGV # [OK] Back from the signal. Now schedule. # [RUN] Send ourselves a signal # Wreck XSTATE header # Got SIGSEGV # [OK] Back from the signal. Now schedule. # [OK] Back in the main thread. ok 39 selftests: x86: corrupt_xstate_header_64 # selftests: x86: amx_64 # amx_64: [FAIL] xstate cpuid: invalid tile data size/offset: 0/0: Success not ok 40 selftests: x86: amx_64 # exit=1 # selftests: x86: ldt_gdt_64 # [NOTE] set_thread_area is available; will use GDT index 12 # [OK] LDT entry 0 has AR 0x0040FB00 and limit 0x0000000A # [OK] LDT entry 0 has AR 0x00C0FB00 and limit 0x0000AFFF # [OK] LDT entry 1 is invalid # [OK] LDT entry 2 has AR 0x00C0FB00 and limit 0x0000AFFF # [OK] LDT entry 1 is invalid # [OK] LDT entry 2 has AR 0x00C0FB00 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D0FB00 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D07B00 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00907B00 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D07300 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D07100 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D07500 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00507700 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507F00 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507D00 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507B00 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507900 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507900 and limit 0x0000000A # [RUN] Test fork # [OK] LDT entry 2 has AR 0x00507900 and limit 0x0000000A # [OK] LDT entry 1 is invalid # [OK] LDT entry 0 is invalid # [NOTE] set_thread_area is available; will use GDT index 12 # [OK] LDT entry 0 has AR 0x0040FB00 and limit 0x0000000A # [OK] LDT entry 0 has AR 0x00C0FB00 and limit 0x0000AFFF # [OK] LDT entry 1 is invalid # [OK] LDT entry 2 has AR 0x00C0FB00 and limit 0x0000AFFF # [OK] LDT entry 1 is invalid # [OK] LDT entry 2 has AR 0x00C0FB00 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D0FB00 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D07B00 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00907B00 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D07300 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D07100 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00D07500 and limit 0x0000AFFF # [OK] LDT entry 2 has AR 0x00507700 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507F00 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507D00 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507B00 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507900 and limit 0x0000000A # [OK] LDT entry 2 has AR 0x00507900 and limit 0x0000000A # [RUN] Test fork # [OK] Child succeeded # [RUN] Test size # [DONE] Size test # [OK] modify_ldt failure 22 # [OK] LDT entry 0 has AR 0x0000F300 and limit 0x00000000 # [OK] LDT entry 0 has AR 0x00007300 and limit 0x00000000 # [OK] LDT entry 0 has AR 0x0000F100 and limit 0x00000000 # [OK] LDT entry 0 has AR 0x00007300 and limit 0x00000000 # [OK] LDT entry 0 has AR 0x00007100 and limit 0x00000001 # [OK] LDT entry 0 has AR 0x00007100 and limit 0x00000000 # [OK] LDT entry 0 is invalid # [OK] LDT entry 0 has AR 0x0040F300 and limit 0x000FFFFF # [OK] LDT entry 0 has AR 0x00C0F300 and limit 0xFFFFFFFF # [OK] LDT entry 0 has AR 0x00C0F100 and limit 0xFFFFFFFF # [OK] LDT entry 0 has AR 0x00C0F700 and limit 0xFFFFFFFF # [OK] LDT entry 0 has AR 0x00C0F500 and limit 0xFFFFFFFF # [OK] LDT entry 0 is invalid # [RUN] Cross-CPU LDT invalidation # [OK] All 5 iterations succeeded # [RUN] Test exec # [OK] LDT entry 0 has AR 0x0040FB00 and limit 0x0000002A # [OK] Child succeeded # [OK] Invalidate DS with set_thread_area: new DS = 0x0 # [OK] Invalidate ES with set_thread_area: new ES = 0x0 # [OK] Invalidate FS with set_thread_area: new FS = 0x0 # [OK] New FSBASE was zero # [OK] Invalidate GS with set_thread_area: new GS = 0x0 # [OK] New GSBASE was zero ok 41 selftests: x86: ldt_gdt_64 # selftests: x86: ptrace_syscall_64 # ptrace_syscall_64: PTRACE_SETREGS: Input/output error # [RUN] Check int80 return regs # [OK] getpid() preserves regs # [OK] kill(getpid(), SIGUSR1) preserves regs # [RUN] ptrace-induced syscall restart # [RUN] SYSEMU # [OK] Initial nr and args are correct # [RUN] Restart the syscall (ip = 0x7f424c815989) not ok 42 selftests: x86: ptrace_syscall_64 # exit=1 make: Leaving directory '/usr/src/perf_selftests-x86_64-rhel-8.3-kselftests-d216de19c8dd97fb6b0eac84fce4362489a61b2e/tools/testing/selftests/x86'