KERNEL SELFTESTS: linux_headers_dir is /usr/src/linux-headers-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65 2018-07-09 03:29:33 ln -sf /usr/bin/clang-7 /usr/bin/clang 2018-07-09 03:29:33 ln -sf /usr/bin/llc-7 /usr/bin/llc 2018-07-09 03:29:33 make run_tests -C timers make: Entering directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers' gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm posix_timers.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/posix_timers gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm nanosleep.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/nanosleep gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm nsleep-lat.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/nsleep-lat gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm set-timer-lat.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/set-timer-lat gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm mqueue-lat.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/mqueue-lat gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm inconsistency-check.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/inconsistency-check gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm raw_skew.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/raw_skew gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm threadtest.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/threadtest gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm rtcpie.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/rtcpie gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm alarmtimer-suspend.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/alarmtimer-suspend gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm valid-adjtimex.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/valid-adjtimex gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm adjtick.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/adjtick gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm change_skew.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/change_skew gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm skew_consistency.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/skew_consistency gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm clocksource-switch.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/clocksource-switch gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm freq-step.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/freq-step gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm leap-a-day.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/leap-a-day gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm leapcrash.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/leapcrash gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm set-tai.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/set-tai gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm set-2038.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/set-2038 gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm set-tz.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers/set-tz TAP version 13 selftests: timers: posix_timers ======================================== Testing posix timers. False negative may happen on CPU execution based timers if other threads run on the CPU... Check itimer virtual... Diff too high: 3086342..[FAIL] Check itimer prof... Diff too high: 2872961..[FAIL] Check itimer real... [OK] Check timer_create() per thread... Diff too high: 3114737..[FAIL] Check timer_create() per process... [OK] Pass 0 Fail 0 Xfail 0 Xpass 0 Skip 0 Error 0 1..0 ok 1..1 selftests: timers: posix_timers [PASS] selftests: timers: nanosleep ======================================== Nanosleep CLOCK_REALTIME [OK] Nanosleep CLOCK_MONOTONIC [OK] Nanosleep CLOCK_MONOTONIC_RAW [UNSUPPORTED] Nanosleep CLOCK_REALTIME_COARSE [UNSUPPORTED] Nanosleep CLOCK_MONOTONIC_COARSE [UNSUPPORTED] Nanosleep CLOCK_BOOTTIME [OK] Nanosleep CLOCK_REALTIME_ALARM [OK] Nanosleep CLOCK_BOOTTIME_ALARM [OK] Nanosleep CLOCK_TAI [OK] Pass 0 Fail 0 Xfail 0 Xpass 0 Skip 0 Error 0 1..0 ok 1..2 selftests: timers: nanosleep [PASS] selftests: timers: nsleep-lat ======================================== nsleep latency CLOCK_REALTIME [OK] nsleep latency CLOCK_MONOTONIC [OK] nsleep latency CLOCK_MONOTONIC_RAW [UNSUPPORTED] nsleep latency CLOCK_REALTIME_COARSE [UNSUPPORTED] nsleep latency CLOCK_MONOTONIC_COARSE [UNSUPPORTED] nsleep latency CLOCK_BOOTTIME [OK] nsleep latency CLOCK_REALTIME_ALARM [OK] nsleep latency CLOCK_BOOTTIME_ALARM [OK] nsleep latency CLOCK_TAI [OK] Pass 0 Fail 0 Xfail 0 Xpass 0 Skip 0 Error 0 1..0 ok 1..3 selftests: timers: nsleep-lat [PASS] selftests: timers: set-timer-lat ======================================== Setting timers for every 1 seconds CLOCK_REALTIME ABSTIME PERIODIC timer fired early: 0 : [OK] CLOCK_REALTIME ABSTIME PERIODIC max latency: 87856 ns : [OK] CLOCK_REALTIME RELTIME PERIODIC timer fired early: 0 : [OK] CLOCK_REALTIME RELTIME PERIODIC max latency: 128313 ns : [OK] CLOCK_REALTIME ABSTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_REALTIME ABSTIME ONE-SHOT max latency: 85010 ns : [OK] CLOCK_REALTIME ABSTIME ONE-SHOT count: 1 : [OK] CLOCK_REALTIME RELTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_REALTIME RELTIME ONE-SHOT max latency: 76661 ns : [OK] CLOCK_REALTIME RELTIME ONE-SHOT count: 1 : [OK] CLOCK_MONOTONIC ABSTIME PERIODIC timer fired early: 0 : [OK] CLOCK_MONOTONIC ABSTIME PERIODIC max latency: 78480 ns : [OK] CLOCK_MONOTONIC RELTIME PERIODIC timer fired early: 0 : [OK] CLOCK_MONOTONIC RELTIME PERIODIC max latency: 94198 ns : [OK] CLOCK_MONOTONIC ABSTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_MONOTONIC ABSTIME ONE-SHOT max latency: 65796 ns : [OK] CLOCK_MONOTONIC ABSTIME ONE-SHOT count: 1 : [OK] CLOCK_MONOTONIC RELTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_MONOTONIC RELTIME ONE-SHOT max latency: 102575 ns : [OK] CLOCK_MONOTONIC RELTIME ONE-SHOT count: 1 : [OK] CLOCK_BOOTTIME ABSTIME PERIODIC timer fired early: 0 : [OK] CLOCK_BOOTTIME ABSTIME PERIODIC max latency: 186831 ns : [OK] CLOCK_BOOTTIME RELTIME PERIODIC timer fired early: 0 : [OK] CLOCK_BOOTTIME RELTIME PERIODIC max latency: 175234 ns : [OK] CLOCK_BOOTTIME ABSTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_BOOTTIME ABSTIME ONE-SHOT max latency: 145885 ns : [OK] CLOCK_BOOTTIME ABSTIME ONE-SHOT count: 1 : [OK] CLOCK_BOOTTIME RELTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_BOOTTIME RELTIME ONE-SHOT max latency: 81233 ns : [OK] CLOCK_BOOTTIME RELTIME ONE-SHOT count: 1 : [OK] CLOCK_REALTIME_ALARM ABSTIME PERIODIC timer fired early: 0 : [OK] CLOCK_REALTIME_ALARM ABSTIME PERIODIC max latency: 112189 ns : [OK] CLOCK_REALTIME_ALARM RELTIME PERIODIC timer fired early: 0 : [OK] CLOCK_REALTIME_ALARM RELTIME PERIODIC max latency: 111344 ns : [OK] CLOCK_REALTIME_ALARM ABSTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_REALTIME_ALARM ABSTIME ONE-SHOT max latency: 94184 ns : [OK] CLOCK_REALTIME_ALARM ABSTIME ONE-SHOT count: 1 : [OK] CLOCK_REALTIME_ALARM RELTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_REALTIME_ALARM RELTIME ONE-SHOT max latency: 130042 ns : [OK] CLOCK_REALTIME_ALARM RELTIME ONE-SHOT count: 1 : [OK] CLOCK_BOOTTIME_ALARM ABSTIME PERIODIC timer fired early: 0 : [OK] CLOCK_BOOTTIME_ALARM ABSTIME PERIODIC max latency: 141850 ns : [OK] CLOCK_BOOTTIME_ALARM RELTIME PERIODIC timer fired early: 0 : [OK] CLOCK_BOOTTIME_ALARM RELTIME PERIODIC max latency: 524559 ns : [OK] CLOCK_BOOTTIME_ALARM ABSTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_BOOTTIME_ALARM ABSTIME ONE-SHOT max latency: 88111 ns : [OK] CLOCK_BOOTTIME_ALARM ABSTIME ONE-SHOT count: 1 : [OK] CLOCK_BOOTTIME_ALARM RELTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_BOOTTIME_ALARM RELTIME ONE-SHOT max latency: 128248 ns : [OK] CLOCK_BOOTTIME_ALARM RELTIME ONE-SHOT count: 1 : [OK] CLOCK_TAI ABSTIME PERIODIC timer fired early: 0 : [OK] CLOCK_TAI ABSTIME PERIODIC max latency: 88858 ns : [OK] CLOCK_TAI RELTIME PERIODIC timer fired early: 0 : [OK] CLOCK_TAI RELTIME PERIODIC max latency: 80901 ns : [OK] CLOCK_TAI ABSTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_TAI ABSTIME ONE-SHOT max latency: 78998 ns : [OK] CLOCK_TAI ABSTIME ONE-SHOT count: 1 : [OK] CLOCK_TAI RELTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_TAI RELTIME ONE-SHOT max latency: 177066 ns : [OK] CLOCK_TAI RELTIME ONE-SHOT count: 1 : [OK] Pass 0 Fail 0 Xfail 0 Xpass 0 Skip 0 Error 0 1..0 ok 1..4 selftests: timers: set-timer-lat [PASS] selftests: timers: mqueue-lat ======================================== Mqueue latency : [OK] Pass 0 Fail 0 Xfail 0 Xpass 0 Skip 0 Error 0 1..0 ok 1..5 selftests: timers: mqueue-lat [PASS] selftests: timers: inconsistency-check ======================================== Consistent CLOCK_REALTIME [OK] Consistent CLOCK_MONOTONIC [OK] Consistent CLOCK_PROCESS_CPUTIME_ID [OK] Consistent CLOCK_THREAD_CPUTIME_ID [OK] Consistent CLOCK_MONOTONIC_RAW [OK] Consistent CLOCK_REALTIME_COARSE [OK] Consistent CLOCK_MONOTONIC_COARSE [OK] Consistent CLOCK_BOOTTIME [OK] Consistent CLOCK_REALTIME_ALARM [OK] Consistent CLOCK_BOOTTIME_ALARM [OK] Consistent CLOCK_TAI [OK] Pass 0 Fail 0 Xfail 0 Xpass 0 Skip 0 Error 0 1..0 ok 1..6 selftests: timers: inconsistency-check [PASS] selftests: timers: raw_skew ======================================== Estimating clock drift: 0.0(est) 0.0(act) [OK] Pass 0 Fail 0 Xfail 0 Xpass 0 Skip 0 Error 0 1..0 ok 1..7 selftests: timers: raw_skew [PASS] selftests: timers: threadtest ======================================== Mon, 09 Jul 2018 03:38:09 +0000 Testing consistency with 8 threads for 30 seconds: [OK] Pass 0 Fail 0 Xfail 0 Xpass 0 Skip 0 Error 0 1..0 ok 1..8 selftests: timers: threadtest [PASS] selftests: timers: rtcpie ======================================== Periodic IRQ rate is 1024Hz. Counting 20 interrupts at: 2Hz: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 4Hz: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 8Hz: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 16Hz: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 32Hz: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 64Hz: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 *** Test complete *** ok 1..9 selftests: timers: rtcpie [PASS] make: Leaving directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/timers' uevent test: not in Makefile 2018-07-09 03:38:58 make TARGETS=uevent make[1]: Entering directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/uevent' gcc -Wl,-no-as-needed -Wall uevent_filtering.c -o uevent_filtering make[1]: Leaving directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/uevent' 2018-07-09 03:38:59 make run_tests -C uevent make: Entering directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/uevent' TAP version 13 selftests: uevent: uevent_filtering ======================================== add@/devices/virtual/mem/fullACTION=addDEVPATH=/devices/virtual/mem/fullSUBSYSTEM=memSYNTH_UUID=0MAJOR=1MINOR=7DEVNAME=fullDEVMODE=0666SEQNUM=1587 add@/devices/virtual/mem/fullACTION=addDEVPATH=/devices/virtual/mem/fullSUBSYSTEM=memSYNTH_UUID=0MAJOR=1MINOR=7DEVNAME=fullDEVMODE=0666SEQNUM=1600 No buffer space available - Failed to receive uevent add@/devices/virtual/mem/fullACTION=addDEVPATH=/devices/virtual/mem/fullSUBSYSTEM=memSYNTH_UUID=0MAJOR=1MINOR=7DEVNAME=fullDEVMODE=0666SEQNUM=1636 add@/devices/virtual/mem/fullACTION=addDEVPATH=/devices/virtual/mem/fullSUBSYSTEM=memSYNTH_UUID=0MAJOR=1MINOR=7DEVNAME=fullDEVMODE=0666SEQNUM=1646 add@/devices/virtual/mem/fullACTION=addDEVPATH=/devices/virtual/mem/fullSUBSYSTEM=memSYNTH_UUID=0MAJOR=1MINOR=7DEVNAME=fullDEVMODE=0666SEQNUM=1659 [==========] Running 1 tests from 1 test cases. [ RUN ] global.uevent_filtering [ OK ] global.uevent_filtering [==========] 1 / 1 tests passed. [ PASSED ] ok 1..1 selftests: uevent: uevent_filtering [PASS] make: Leaving directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/uevent' 2018-07-09 03:39:01 make run_tests -C user make: Entering directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/user' TAP version 13 selftests: user: test_user_copy.sh ======================================== user_copy: ok ok 1..1 selftests: user: test_user_copy.sh [PASS] make: Leaving directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/user' vDSO test: not in Makefile 2018-07-09 03:39:01 make TARGETS=vDSO make[1]: Entering directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vDSO' gcc -std=gnu99 vdso_test.c parse_vdso.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vDSO/vdso_test gcc -std=gnu99 -nostdlib -fno-asynchronous-unwind-tables -fno-stack-protector \ vdso_standalone_test_x86.c parse_vdso.c \ -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vDSO/vdso_standalone_test_x86 make[1]: Leaving directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vDSO' 2018-07-09 03:39:01 make run_tests -C vDSO make: Entering directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vDSO' TAP version 13 selftests: vDSO: vdso_test ======================================== The time is 1531107541.553195 ok 1..1 selftests: vDSO: vdso_test [PASS] selftests: vDSO: vdso_standalone_test_x86 ======================================== The time is 1531107541.560849 ok 1..2 selftests: vDSO: vdso_standalone_test_x86 [PASS] make: Leaving directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vDSO' 2018-07-09 03:39:01 make run_tests -C vm make: Entering directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vm' gcc -Wall -I ../../../../usr/include compaction_test.c -lrt -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vm/compaction_test gcc -Wall -I ../../../../usr/include gup_benchmark.c -lrt -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vm/gup_benchmark gcc -Wall -I ../../../../usr/include hugepage-mmap.c -lrt -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vm/hugepage-mmap gcc -Wall -I ../../../../usr/include hugepage-shm.c -lrt -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vm/hugepage-shm gcc -Wall -I ../../../../usr/include map_hugetlb.c -lrt -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vm/map_hugetlb gcc -Wall -I ../../../../usr/include mlock-random-test.c -lrt -lcap -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vm/mlock-random-test gcc -Wall -I ../../../../usr/include mlock2-tests.c -lrt -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vm/mlock2-tests gcc -Wall -I ../../../../usr/include on-fault-limit.c -lrt -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vm/on-fault-limit gcc -Wall -I ../../../../usr/include thuge-gen.c -lrt -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vm/thuge-gen gcc -Wall -I ../../../../usr/include transhuge-stress.c -lrt -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vm/transhuge-stress gcc -Wall -I ../../../../usr/include userfaultfd.c ../../../../usr/include/linux/kernel.h -lrt -lpthread -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vm/userfaultfd gcc -Wall -I ../../../../usr/include va_128TBswitch.c -lrt -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vm/va_128TBswitch gcc -Wall -I ../../../../usr/include virtual_address_range.c -lrt -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vm/virtual_address_range TAP version 13 selftests: vm: run_vmtests ======================================== --------------------- running hugepage-mmap --------------------- Returned address is 0x7f70bd800000 First hex is 0 First hex is 3020100 [PASS] -------------------- running hugepage-shm -------------------- shmid: 0x0 shmaddr: 0x7fd109800000 Starting the writes: ................................................................................................................................................................................................................................................................ Starting the Check...Done. [PASS] ------------------- running map_hugetlb ------------------- Returned address is 0x7fd189c00000 First hex is 0 First hex is 3020100 [PASS] NOTE: The above hugetlb tests provide minimal coverage. Use https://github.com/libhugetlbfs/libhugetlbfs.git for hugetlb regression testing. ------------------- running userfaultfd ------------------- nr_pages: 32768, nr_pages_per_cpu: 16384 bounces: 31, mode: rnd racing ver poll, userfaults: 3059 2789 bounces: 30, mode: racing ver poll, userfaults: 6071 1760 bounces: 29, mode: rnd ver poll, userfaults: 5187 5504 bounces: 28, mode: ver poll, userfaults: 6370 6527 bounces: 27, mode: rnd racing poll, userfaults: 4547 3729 bounces: 26, mode: racing poll, userfaults: 1389 1498 bounces: 25, mode: rnd poll, userfaults: 6079 5907 bounces: 24, mode: poll, userfaults: 2574 2523 bounces: 23, mode: rnd racing ver, userfaults: 3992 3653 bounces: 22, mode: racing ver, userfaults: 2737 2680 bounces: 21, mode: rnd ver, userfaults: 7379 7007 bounces: 20, mode: ver, userfaults: 6098 6402 bounces: 19, mode: rnd racing, userfaults: 3516 6419 bounces: 18, mode: racing, userfaults: 4706 4472 bounces: 17, mode: rnd, userfaults: 7897 7491 bounces: 16, mode:, userfaults: 6978 6858 bounces: 15, mode: rnd racing ver poll, userfaults: 3622 3893 bounces: 14, mode: racing ver poll, userfaults: 1850 1747 bounces: 13, mode: rnd ver poll, userfaults: 4297 5336 bounces: 12, mode: ver poll, userfaults: 5154 5940 bounces: 11, mode: rnd racing poll, userfaults: 4326 2655 bounces: 10, mode: racing poll, userfaults: 1542 2829 bounces: 9, mode: rnd poll, userfaults: 5709 5864 bounces: 8, mode: poll, userfaults: 6407 6609 bounces: 7, mode: rnd racing ver, userfaults: 5978 5506 bounces: 6, mode: racing ver, userfaults: 6495 3715 bounces: 5, mode: rnd ver, userfaults: 6176 5704 bounces: 4, mode: ver, userfaults: 6377 5529 bounces: 3, mode: rnd racing, userfaults: 3660 6076 bounces: 2, mode: racing, userfaults: 3296 2960 bounces: 1, mode: rnd, userfaults: 7562 7163 bounces: 0, mode:, userfaults: 6456 6114 testing UFFDIO_ZEROPAGE: done. testing signal delivery: done. testing events (fork, remap, remove): userfaults: 32768 [PASS] --------------------------- running userfaultfd_hugetlb --------------------------- nr_pages: 64, nr_pages_per_cpu: 32 bounces: 31, mode: rnd racing ver poll, userfaults: 18 12 bounces: 30, mode: racing ver poll, userfaults: 8 18 bounces: 29, mode: rnd ver poll, userfaults: 14 12 bounces: 28, mode: ver poll, userfaults: 15 14 bounces: 27, mode: rnd racing poll, userfaults: 14 13 bounces: 26, mode: racing poll, userfaults: 1 3 bounces: 25, mode: rnd poll, userfaults: 11 10 bounces: 24, mode: poll, userfaults: 8 10 bounces: 23, mode: rnd racing ver, userfaults: 19 12 bounces: 22, mode: racing ver, userfaults: 19 13 bounces: 21, mode: rnd ver, userfaults: 24 11 bounces: 20, mode: ver, userfaults: 22 13 bounces: 19, mode: rnd racing, userfaults: 12 13 bounces: 18, mode: racing, userfaults: 16 11 bounces: 17, mode: rnd, userfaults: 16 13 bounces: 16, mode:, userfaults: 17 16 bounces: 15, mode: rnd racing ver poll, userfaults: 20 12 bounces: 14, mode: racing ver poll, userfaults: 10 10 bounces: 13, mode: rnd ver poll, userfaults: 10 12 bounces: 12, mode: ver poll, userfaults: 11 11 bounces: 11, mode: rnd racing poll, userfaults: 11 12 bounces: 10, mode: racing poll, userfaults: 9 14 bounces: 9, mode: rnd poll, userfaults: 11 12 bounces: 8, mode: poll, userfaults: 11 8 bounces: 7, mode: rnd racing ver, userfaults: 18 16 bounces: 6, mode: racing ver, userfaults: 20 7 bounces: 5, mode: rnd ver, userfaults: 16 15 bounces: 4, mode: ver, userfaults: 13 7 bounces: 3, mode: rnd racing, userfaults: 17 14 bounces: 2, mode: racing, userfaults: 9 16 bounces: 1, mode: rnd, userfaults: 17 14 bounces: 0, mode:, userfaults: 20 5 testing UFFDIO_ZEROPAGE: done. testing signal delivery: done. testing events (fork, remap, remove): userfaults: 64 [PASS] ------------------------- running userfaultfd_shmem ------------------------- nr_pages: 32768, nr_pages_per_cpu: 16384 bounces: 31, mode: rnd racing ver poll, UFFDIO_COPY retry error -2 [FAIL] ----------------------- running compaction_test ----------------------- [ignored_by_lkp] [PASS] ---------------------- running on-fault-limit ---------------------- [PASS] -------------------- running mlock2-tests -------------------- Failed to make faulted page unevictable Failed to make faulted page unevictable Failed to make present page unevictable [FAIL] ----------------------------- running virtual_address_range ----------------------------- [PASS] ----------------------------- running virtual address 128TB switch test ----------------------------- [ignored_by_lkp] [PASS] not ok 1..1 selftests: vm: run_vmtests [FAIL] make: Leaving directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/vm' watchdog test: not in Makefile 2018-07-09 03:39:22 make TARGETS=watchdog make[1]: Entering directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/watchdog' gcc watchdog-test.c -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/watchdog/watchdog-test make[1]: Leaving directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/watchdog' ignored_by_lkp watchdog test ignored_by_lkp x86.mov_ss_trap test 2018-07-09 03:39:22 make run_tests -C x86 make: Entering directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86' gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/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 -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/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 -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/syscall_nt_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 syscall_nt.c -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/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 -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/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 -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/sigreturn_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 sigreturn.c -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/iopl_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 iopl.c -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/mpx-mini-test_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 mpx-mini-test.c -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/ioperm_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 ioperm.c -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/protection_keys_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 protection_keys.c -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/test_vdso_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 test_vdso.c -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/test_vsyscall_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 test_vsyscall.c -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/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 -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/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 -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/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 thunks_32.S -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/unwind_vdso_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 unwind_vdso.c -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/test_FCMOV_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 test_FCMOV.c -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/test_FCOMI_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 test_FCOMI.c -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/test_FISTTP_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 test_FISTTP.c -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/vdso_restorer_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 vdso_restorer.c -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/ldt_gdt_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 ldt_gdt.c -lrt -ldl -lm gcc -m32 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/ptrace_syscall_32 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 ptrace_syscall.c raw_syscall_helper_32.S -lrt -ldl -lm gcc -m64 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/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 -lrt -ldl gcc -m64 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/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 thunks.S -lrt -ldl gcc -m64 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/syscall_nt_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 syscall_nt.c -lrt -ldl gcc -m64 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/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 -lrt -ldl gcc -m64 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/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 -lrt -ldl gcc -m64 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/sigreturn_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 sigreturn.c -lrt -ldl gcc -m64 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/iopl_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 iopl.c -lrt -ldl gcc -m64 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/mpx-mini-test_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 mpx-mini-test.c -lrt -ldl gcc -m64 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/ioperm_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 ioperm.c -lrt -ldl gcc -m64 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/protection_keys_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 protection_keys.c -lrt -ldl gcc -m64 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/test_vdso_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 test_vdso.c -lrt -ldl gcc -m64 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/test_vsyscall_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 test_vsyscall.c -lrt -ldl gcc -m64 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/fsgsbase_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 fsgsbase.c -lrt -ldl gcc -m64 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/sysret_rip_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 sysret_rip.c -lrt -ldl gcc -m64 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/ldt_gdt_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 ldt_gdt.c -lrt -ldl gcc -m64 -o /usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86/ptrace_syscall_64 -O2 -g -std=gnu99 -pthread -Wall -no-pie -DCAN_BUILD_32 -DCAN_BUILD_64 ptrace_syscall.c -lrt -ldl TAP version 13 selftests: x86: single_step_syscall_32 ======================================== [RUN] Set TF and check nop [OK] Survived with TF set and 14 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 43 traps [RUN] Fast syscall with TF cleared [OK] Nothing unexpected happened ok 1..1 selftests: x86: single_step_syscall_32 [PASS] selftests: x86: sysret_ss_attrs_32 ======================================== [RUN] Syscalls followed by SS validation [OK] We survived ok 1..2 selftests: x86: sysret_ss_attrs_32 [PASS] selftests: x86: syscall_nt_32 ======================================== [RUN] Set NT 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 ok 1..3 selftests: x86: syscall_nt_32 [PASS] selftests: x86: test_mremap_vdso_32 ======================================== AT_SYSINFO_EHDR is 0xf7ed7000 [NOTE] Moving vDSO: [0xf7ed7000, 0xf7ed8000] -> [0xf7ed1000, 0xf7ed2000] [NOTE] vDSO partial move failed, will try with bigger size [NOTE] Moving vDSO: [0xf7ed7000, 0xf7ed9000] -> [0xf7ed0000, 0xf7ed2000] [OK] ok 1..4 selftests: x86: test_mremap_vdso_32 [PASS] selftests: x86: check_initial_reg_state_32 ======================================== [OK] All GPRs except SP are 0 [OK] FLAGS is 0x202 ok 1..5 selftests: x86: check_initial_reg_state_32 [PASS] 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 1..6 selftests: x86: sigreturn_32 [PASS] selftests: x86: iopl_32 ======================================== child: set IOPL to 3 [RUN] child: write to 0x80 [OK] Child succeeded [RUN] parent: write to 0x80 (should fail) [OK] write was denied 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 1..7 selftests: x86: iopl_32 [PASS] selftests: x86: mpx-mini-test_32 ======================================== processor lacks XSAVE, can not run MPX tests ok 1..8 selftests: x86: mpx-mini-test_32 [PASS] selftests: x86: ioperm_32 ======================================== [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 [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 Drop privileges [RUN] disable 0x80 [OK] it worked [RUN] enable 0x80 again [OK] it failed ok 1..9 selftests: x86: ioperm_32 [PASS] selftests: x86: protection_keys_32 ======================================== has pku: 0 running PKEY tests for unsupported CPU/OS ok 1..10 selftests: x86: protection_keys_32 [PASS] selftests: x86: test_vdso_32 ======================================== Warning: failed to find getcpu in vDSO [RUN] Testing getcpu... [OK] CPU 0: syscall: cpu 0, node 0 [OK] CPU 1: syscall: cpu 1, node 0 ok 1..11 selftests: x86: test_vdso_32 [PASS] selftests: x86: test_vsyscall_32 ======================================== [NOTE] failed to find getcpu in vDSO [RUN] test gettimeofday() vDSO time offsets: 0.000016 0.000001 [OK] vDSO gettimeofday()'s timeval was okay [RUN] test time() [OK] vDSO time() is okay [RUN] getcpu() on CPU 0 [RUN] getcpu() on CPU 1 ok 1..12 selftests: x86: test_vsyscall_32 [PASS] 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 1..13 selftests: x86: entry_from_vm86_32 [PASS] selftests: x86: syscall_arg_fault_32 ======================================== [RUN] SYSENTER with invalid state [OK] Seems okay [RUN] SYSCALL with invalid state [SKIP] Illegal instruction ok 1..14 selftests: x86: syscall_arg_fault_32 [PASS] 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=0000000000200606 id 0 00 d i 0 0 p 1 [WARN] Flags change=00000000000008d1 0 00 o s z 0 a 0 0 c [OK] Arguments are preserved across syscall [NOTE] R11 has changed:0000000000200606 - 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=0000000000200606 id 0 00 d i 0 0 p 1 [WARN] Flags change=00000000000008d1 0 00 o s z 0 a 0 0 c [OK] Arguments are preserved across syscall [NOTE] R11 has changed:0000000000200606 - 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 1..15 selftests: x86: test_syscall_vdso_32 [PASS] selftests: x86: unwind_vdso_32 ======================================== AT_SYSINFO is 0xf7f16050 [OK] AT_SYSINFO maps to linux-gate.so.1, loaded at 0x0xf7f15000 [RUN] Set TF and check a fast syscall In vsyscall at 0xf7f16050, returning to 0xf7d0a8b7 SIGTRAP at 0xf7f16050 0xf7f16050 0xf7d0a8b7 [OK] NR = 20, args = 1, 2, 3, 4, 5, 6 SIGTRAP at 0xf7f16051 0xf7f16051 0xf7d0a8b7 [OK] NR = 20, args = 1, 2, 3, 4, 5, 6 SIGTRAP at 0xf7f16052 0xf7f16052 0xf7d0a8b7 [OK] NR = 20, args = 1, 2, 3, 4, 5, 6 SIGTRAP at 0xf7f16053 0xf7f16053 0xf7d0a8b7 [OK] NR = 20, args = 1, 2, 3, 4, 5, 6 SIGTRAP at 0xf7f16055 0xf7f16055 0xf7d0a8b7 [OK] NR = 20, args = 1, 2, 3, 4, 5, 6 SIGTRAP at 0xf7f1605a 0xf7f1605a 0xf7d0a8b7 [OK] NR = 2070, args = 1, 2, 3, 4, 5, 6 SIGTRAP at 0xf7f1605b 0xf7f1605b 0xf7d0a8b7 [OK] NR = 2070, args = 1, 2, 3, 4, 5, 6 SIGTRAP at 0xf7f1605c 0xf7f1605c 0xf7d0a8b7 [OK] NR = 2070, args = 1, 2, 3, 4, 5, 6 Vsyscall is done [OK] All is well ok 1..16 selftests: x86: unwind_vdso_32 [PASS] selftests: x86: test_FCMOV_32 ======================================== [RUN] Testing fcmovCC instructions [OK] fcmovCC ok 1..17 selftests: x86: test_FCMOV_32 [PASS] selftests: x86: test_FCOMI_32 ======================================== [RUN] Testing f[u]comi[p] instructions [OK] f[u]comi[p] ok 1..18 selftests: x86: test_FCOMI_32 [PASS] selftests: x86: test_FISTTP_32 ======================================== [RUN] Testing fisttp instructions [OK] fisttp ok 1..19 selftests: x86: test_FISTTP_32 [PASS] selftests: x86: vdso_restorer_32 ======================================== [OK] SA_SIGINFO handler returned successfully [OK] !SA_SIGINFO handler returned successfully ok 1..20 selftests: x86: vdso_restorer_32 [PASS] 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 [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] Invalidate GS with set_thread_area: new GS = 0x0 ok 1..21 selftests: x86: ldt_gdt_32 [PASS] selftests: x86: ptrace_syscall_32 ======================================== [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 = 0xf7f69059) [OK] Restarted nr and args are correct [RUN] Change nr and args and restart the syscall (ip = 0xf7f69059) [OK] Replacement nr and args are correct [OK] Child exited cleanly [RUN] kernel syscall restart under ptrace [RUN] SYSCALL [OK] Initial nr and args are correct [RUN] SYSCALL [OK] Args after SIGUSR1 are correct (ax = -514) [OK] Child got SIGUSR1 [RUN] Step again [OK] pause(2) restarted correctly ok 1..22 selftests: x86: ptrace_syscall_32 [PASS] selftests: x86: single_step_syscall_64 ======================================== [RUN] Set TF and check nop [OK] Survived with TF set and 9 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 ok 1..23 selftests: x86: single_step_syscall_64 [PASS] selftests: x86: sysret_ss_attrs_64 ======================================== [RUN] Syscalls followed by SS validation [OK] We survived ok 1..24 selftests: x86: sysret_ss_attrs_64 [PASS] selftests: x86: syscall_nt_64 ======================================== [RUN] Set NT 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 ok 1..25 selftests: x86: syscall_nt_64 [PASS] selftests: x86: test_mremap_vdso_64 ======================================== AT_SYSINFO_EHDR is 0x7fff6eb91000 [NOTE] Moving vDSO: [0x7fff6eb91000, 0x7fff6eb92000] -> [0x7f87e9d25000, 0x7f87e9d26000] [NOTE] vDSO partial move failed, will try with bigger size [NOTE] Moving vDSO: [0x7fff6eb91000, 0x7fff6eb93000] -> [0x7f87e9d24000, 0x7f87e9d26000] [OK] ok 1..26 selftests: x86: test_mremap_vdso_64 [PASS] selftests: x86: check_initial_reg_state_64 ======================================== [OK] All GPRs except SP are 0 [OK] FLAGS is 0x202 ok 1..27 selftests: x86: check_initial_reg_state_64 [PASS] 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 1..28 selftests: x86: sigreturn_64 [PASS] selftests: x86: iopl_64 ======================================== child: set IOPL to 3 [RUN] child: write to 0x80 [OK] Child succeeded [RUN] parent: write to 0x80 (should fail) [OK] write was denied 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 1..29 selftests: x86: iopl_64 [PASS] selftests: x86: mpx-mini-test_64 ======================================== processor lacks XSAVE, can not run MPX tests ok 1..30 selftests: x86: mpx-mini-test_64 [PASS] 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 [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 Drop privileges [RUN] disable 0x80 [OK] it worked [RUN] enable 0x80 again [OK] it failed ok 1..31 selftests: x86: ioperm_64 [PASS] selftests: x86: protection_keys_64 ======================================== has pku: 0 running PKEY tests for unsupported CPU/OS ok 1..32 selftests: x86: protection_keys_64 [PASS] selftests: x86: test_vdso_64 ======================================== [RUN] Testing getcpu... [OK] CPU 0: syscall: cpu 0, node 0 vdso: cpu 0, node 0 vsyscall: cpu 0, node 0 [OK] CPU 1: syscall: cpu 1, node 0 vdso: cpu 1, node 0 vsyscall: cpu 1, node 0 ok 1..33 selftests: x86: test_vdso_64 [PASS] 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.000010 0.000004 [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] got expected result [RUN] checking that vsyscalls are emulated [OK] vsyscalls are emulated (1 instructions in vsyscall page) ok 1..34 selftests: x86: test_vsyscall_64 [PASS] selftests: x86: fsgsbase_64 ======================================== [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 other thread: using LDT slot 0 [OK] GSBASE remained 0 ok 1..35 selftests: x86: fsgsbase_64 [PASS] 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 1..36 selftests: x86: sysret_rip_64 [PASS] 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 1..37 selftests: x86: ldt_gdt_64 [PASS] selftests: x86: ptrace_syscall_64 ======================================== [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 = 0x7f6ec5fe08f9) [OK] Restarted nr and args are correct [RUN] Change nr and args and restart the syscall (ip = 0x7f6ec5fe08f9) [OK] Replacement nr and args are correct [OK] Child exited cleanly [RUN] kernel syscall restart under ptrace [RUN] SYSCALL [OK] Initial nr and args are correct [RUN] SYSCALL [OK] Args after SIGUSR1 are correct (ax = -514) [OK] Child got SIGUSR1 [RUN] Step again [OK] pause(2) restarted correctly ok 1..38 selftests: x86: ptrace_syscall_64 [PASS] make: Leaving directory '/usr/src/linux-selftests-x86_64-rhel-7.2-47704eaeb47ea6636650d3637368f5bbf79a6f65/tools/testing/selftests/x86' ignored_by_lkp zram test