KERNEL SELFTESTS: linux_headers_dir is /usr/src/linux-headers-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991 2019-02-17 20:19:08 ln -sf /usr/bin/clang-7 /usr/bin/clang 2019-02-17 20:19:08 ln -sf /usr/bin/llc-7 /usr/bin/llc 2019-02-17 20:19:08 make run_tests -C timers make: Entering directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers' gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm posix_timers.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/posix_timers gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm nanosleep.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/nanosleep gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm nsleep-lat.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/nsleep-lat gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm set-timer-lat.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/set-timer-lat gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm mqueue-lat.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/mqueue-lat gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm inconsistency-check.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/inconsistency-check gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm raw_skew.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/raw_skew gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm threadtest.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/threadtest gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm rtcpie.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/rtcpie gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm alarmtimer-suspend.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/alarmtimer-suspend gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm valid-adjtimex.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/valid-adjtimex gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm adjtick.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/adjtick gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm change_skew.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/change_skew gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm skew_consistency.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/skew_consistency gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm clocksource-switch.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/clocksource-switch gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm freq-step.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/freq-step gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm leap-a-day.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/leap-a-day gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm leapcrash.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/leapcrash gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm set-tai.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/set-tai gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm set-2038.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers/set-2038 gcc -O3 -Wl,-no-as-needed -Wall -lrt -lpthread -lm set-tz.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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... [OK] Check itimer prof... [OK] Check itimer real... [OK] Check timer_create() per thread... [OK] 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: 108055 ns : [OK] CLOCK_REALTIME RELTIME PERIODIC timer fired early: 0 : [OK] CLOCK_REALTIME RELTIME PERIODIC max latency: 79099 ns : [OK] CLOCK_REALTIME ABSTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_REALTIME ABSTIME ONE-SHOT max latency: 78646 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: 64791 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: 74977 ns : [OK] CLOCK_MONOTONIC RELTIME PERIODIC timer fired early: 0 : [OK] CLOCK_MONOTONIC RELTIME PERIODIC max latency: 71429 ns : [OK] CLOCK_MONOTONIC ABSTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_MONOTONIC ABSTIME ONE-SHOT max latency: 65208 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: 67467 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: 80590 ns : [OK] CLOCK_BOOTTIME RELTIME PERIODIC timer fired early: 0 : [OK] CLOCK_BOOTTIME RELTIME PERIODIC max latency: 77761 ns : [OK] CLOCK_BOOTTIME ABSTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_BOOTTIME ABSTIME ONE-SHOT max latency: 94790 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: 69638 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: 72121 ns : [OK] CLOCK_REALTIME_ALARM RELTIME PERIODIC timer fired early: 0 : [OK] CLOCK_REALTIME_ALARM RELTIME PERIODIC max latency: 69062 ns : [OK] CLOCK_REALTIME_ALARM ABSTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_REALTIME_ALARM ABSTIME ONE-SHOT max latency: 68319 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: 35027 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: 85302 ns : [OK] CLOCK_BOOTTIME_ALARM RELTIME PERIODIC timer fired early: 0 : [OK] CLOCK_BOOTTIME_ALARM RELTIME PERIODIC max latency: 77188 ns : [OK] CLOCK_BOOTTIME_ALARM ABSTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_BOOTTIME_ALARM ABSTIME ONE-SHOT max latency: 66971 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: 87441 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: 443022 ns : [OK] CLOCK_TAI RELTIME PERIODIC timer fired early: 0 : [OK] CLOCK_TAI RELTIME PERIODIC max latency: 82352 ns : [OK] CLOCK_TAI ABSTIME ONE-SHOT timer fired early: 0 : [OK] CLOCK_TAI ABSTIME ONE-SHOT max latency: 72309 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: 62950 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 ======================================== Sun, 17 Feb 2019 20:27:37 +0800 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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/timers' 2019-02-17 20:28:26 make run_tests -C tpm2 make: Entering directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/tpm2' TAP version 13 selftests: tpm2: test_smoke.sh ======================================== test_seal_with_auth (tpm2_tests.SmokeTest) ... ERROR test_seal_with_policy (tpm2_tests.SmokeTest) ... ERROR test_seal_with_too_long_auth (tpm2_tests.SmokeTest) ... ERROR test_too_short_cmd (tpm2_tests.SmokeTest) ... ERROR test_unseal_with_wrong_auth (tpm2_tests.SmokeTest) ... ERROR test_unseal_with_wrong_policy (tpm2_tests.SmokeTest) ... ERROR ====================================================================== ERROR: test_seal_with_auth (tpm2_tests.SmokeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "tpm2_tests.py", line 15, in setUp self.client = tpm2.Client() File "tpm2.py", line 360, in __init__ self.tpm = open('/dev/tpm0', 'r+b') IOError: [Errno 2] No such file or directory: '/dev/tpm0' ====================================================================== ERROR: test_seal_with_policy (tpm2_tests.SmokeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "tpm2_tests.py", line 15, in setUp self.client = tpm2.Client() File "tpm2.py", line 360, in __init__ self.tpm = open('/dev/tpm0', 'r+b') IOError: [Errno 2] No such file or directory: '/dev/tpm0' ====================================================================== ERROR: test_seal_with_too_long_auth (tpm2_tests.SmokeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "tpm2_tests.py", line 15, in setUp self.client = tpm2.Client() File "tpm2.py", line 360, in __init__ self.tpm = open('/dev/tpm0', 'r+b') IOError: [Errno 2] No such file or directory: '/dev/tpm0' ====================================================================== ERROR: test_too_short_cmd (tpm2_tests.SmokeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "tpm2_tests.py", line 15, in setUp self.client = tpm2.Client() File "tpm2.py", line 360, in __init__ self.tpm = open('/dev/tpm0', 'r+b') IOError: [Errno 2] No such file or directory: '/dev/tpm0' ====================================================================== ERROR: test_unseal_with_wrong_auth (tpm2_tests.SmokeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "tpm2_tests.py", line 15, in setUp self.client = tpm2.Client() File "tpm2.py", line 360, in __init__ self.tpm = open('/dev/tpm0', 'r+b') IOError: [Errno 2] No such file or directory: '/dev/tpm0' ====================================================================== ERROR: test_unseal_with_wrong_policy (tpm2_tests.SmokeTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "tpm2_tests.py", line 15, in setUp self.client = tpm2.Client() File "tpm2.py", line 360, in __init__ self.tpm = open('/dev/tpm0', 'r+b') IOError: [Errno 2] No such file or directory: '/dev/tpm0' ---------------------------------------------------------------------- Ran 6 tests in 0.001s FAILED (errors=6) not ok 1..1 selftests: tpm2: test_smoke.sh [FAIL] selftests: tpm2: test_space.sh ======================================== test_flush_context (tpm2_tests.SpaceTest) ... ERROR test_get_handles (tpm2_tests.SpaceTest) ... ERROR test_invalid_cc (tpm2_tests.SpaceTest) ... ERROR test_make_two_spaces (tpm2_tests.SpaceTest) ... ERROR ====================================================================== ERROR: test_flush_context (tpm2_tests.SpaceTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "tpm2_tests.py", line 183, in test_flush_context space1 = tpm2.Client(tpm2.Client.FLAG_SPACE) File "tpm2.py", line 362, in __init__ self.tpm = open('/dev/tpmrm0', 'r+b') IOError: [Errno 2] No such file or directory: '/dev/tpmrm0' ====================================================================== ERROR: test_get_handles (tpm2_tests.SpaceTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "tpm2_tests.py", line 193, in test_get_handles space1 = tpm2.Client(tpm2.Client.FLAG_SPACE) File "tpm2.py", line 362, in __init__ self.tpm = open('/dev/tpmrm0', 'r+b') IOError: [Errno 2] No such file or directory: '/dev/tpmrm0' ====================================================================== ERROR: test_invalid_cc (tpm2_tests.SpaceTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "tpm2_tests.py", line 212, in test_invalid_cc space1 = tpm2.Client(tpm2.Client.FLAG_SPACE) File "tpm2.py", line 362, in __init__ self.tpm = open('/dev/tpmrm0', 'r+b') IOError: [Errno 2] No such file or directory: '/dev/tpmrm0' ====================================================================== ERROR: test_make_two_spaces (tpm2_tests.SpaceTest) ---------------------------------------------------------------------- Traceback (most recent call last): File "tpm2_tests.py", line 169, in test_make_two_spaces space1 = tpm2.Client(tpm2.Client.FLAG_SPACE) File "tpm2.py", line 362, in __init__ self.tpm = open('/dev/tpmrm0', 'r+b') IOError: [Errno 2] No such file or directory: '/dev/tpmrm0' ---------------------------------------------------------------------- Ran 4 tests in 0.001s FAILED (errors=4) not ok 1..2 selftests: tpm2: test_space.sh [FAIL] make: Leaving directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/tpm2' uevent test: not in Makefile 2019-02-17 20:28:27 make TARGETS=uevent make[1]: Entering directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/uevent' gcc -Wl,-no-as-needed -Wall uevent_filtering.c -o uevent_filtering make[1]: Leaving directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/uevent' 2019-02-17 20:28:27 make run_tests -C uevent make: Entering directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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=1697 add@/devices/virtual/mem/fullACTION=addDEVPATH=/devices/virtual/mem/fullSUBSYSTEM=memSYNTH_UUID=0MAJOR=1MINOR=7DEVNAME=fullDEVMODE=0666SEQNUM=1710 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=1746 add@/devices/virtual/mem/fullACTION=addDEVPATH=/devices/virtual/mem/fullSUBSYSTEM=memSYNTH_UUID=0MAJOR=1MINOR=7DEVNAME=fullDEVMODE=0666SEQNUM=1756 No buffer space available - Failed to receive uevent [==========] 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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/uevent' 2019-02-17 20:28:29 make run_tests -C user make: Entering directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/user' vDSO test: not in Makefile 2019-02-17 20:28:29 make TARGETS=vDSO make[1]: Entering directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vDSO' gcc -std=gnu99 vdso_test.c parse_vdso.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vDSO/vdso_standalone_test_x86 make[1]: Leaving directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vDSO' 2019-02-17 20:28:29 make run_tests -C vDSO make: Entering directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vDSO' TAP version 13 selftests: vDSO: vdso_test ======================================== The time is 1550406509.594805 ok 1..1 selftests: vDSO: vdso_test [PASS] selftests: vDSO: vdso_standalone_test_x86 ======================================== The time is 1550406509.600906 ok 1..2 selftests: vDSO: vdso_standalone_test_x86 [PASS] make: Leaving directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vDSO' 2019-02-17 20:28:29 make run_tests -C vm make: Entering directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm' make ARCH=x86 -C ../../../.. headers_install make[1]: Entering directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991' HOSTCC scripts/basic/fixdep WRAP arch/x86/include/generated/uapi/asm/bpf_perf_event.h WRAP arch/x86/include/generated/uapi/asm/poll.h SYSTBL arch/x86/include/generated/asm/syscalls_32.h SYSHDR arch/x86/include/generated/uapi/asm/unistd_32.h SYSHDR arch/x86/include/generated/uapi/asm/unistd_64.h SYSHDR arch/x86/include/generated/uapi/asm/unistd_x32.h HOSTCC arch/x86/tools/relocs_32.o HOSTCC arch/x86/tools/relocs_64.o HOSTCC arch/x86/tools/relocs_common.o HOSTLD arch/x86/tools/relocs UPD include/generated/uapi/linux/version.h HOSTCC scripts/unifdef INSTALL usr/include/asm-generic/ (37 files) INSTALL usr/include/drm/ (26 files) INSTALL usr/include/linux/ (503 files) INSTALL usr/include/linux/android/ (2 files) INSTALL usr/include/linux/byteorder/ (2 files) INSTALL usr/include/linux/caif/ (2 files) INSTALL usr/include/linux/can/ (6 files) INSTALL usr/include/linux/cifs/ (1 file) INSTALL usr/include/linux/dvb/ (8 files) INSTALL usr/include/linux/genwqe/ (1 file) INSTALL usr/include/linux/hdlc/ (1 file) INSTALL usr/include/linux/hsi/ (2 files) INSTALL usr/include/linux/iio/ (2 files) INSTALL usr/include/linux/isdn/ (1 file) INSTALL usr/include/linux/mmc/ (1 file) INSTALL usr/include/linux/netfilter/ (88 files) INSTALL usr/include/linux/netfilter/ipset/ (4 files) INSTALL usr/include/linux/netfilter_arp/ (2 files) INSTALL usr/include/linux/netfilter_bridge/ (17 files) INSTALL usr/include/linux/netfilter_ipv4/ (9 files) INSTALL usr/include/linux/netfilter_ipv6/ (13 files) INSTALL usr/include/linux/nfsd/ (5 files) INSTALL usr/include/linux/raid/ (2 files) INSTALL usr/include/linux/sched/ (1 file) INSTALL usr/include/linux/spi/ (1 file) INSTALL usr/include/linux/sunrpc/ (1 file) INSTALL usr/include/linux/tc_act/ (15 files) INSTALL usr/include/linux/tc_ematch/ (5 files) INSTALL usr/include/linux/usb/ (13 files) INSTALL usr/include/linux/wimax/ (1 file) INSTALL usr/include/misc/ (2 files) INSTALL usr/include/mtd/ (5 files) INSTALL usr/include/rdma/ (25 files) INSTALL usr/include/rdma/hfi/ (2 files) INSTALL usr/include/scsi/ (5 files) INSTALL usr/include/scsi/fc/ (4 files) INSTALL usr/include/sound/ (16 files) INSTALL usr/include/video/ (3 files) INSTALL usr/include/xen/ (4 files) INSTALL usr/include/asm/ (62 files) make[1]: Leaving directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991' gcc -Wall -I ../../../../usr/include compaction_test.c -lrt -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm/compaction_test gcc -Wall -I ../../../../usr/include gup_benchmark.c -lrt -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm/gup_benchmark gcc -Wall -I ../../../../usr/include hugepage-mmap.c -lrt -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm/hugepage-mmap gcc -Wall -I ../../../../usr/include hugepage-shm.c -lrt -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm/hugepage-shm gcc -Wall -I ../../../../usr/include map_hugetlb.c -lrt -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm/map_hugetlb gcc -Wall -I ../../../../usr/include map_fixed_noreplace.c -lrt -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm/map_fixed_noreplace gcc -Wall -I ../../../../usr/include map_populate.c -lrt -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm/map_populate gcc -Wall -I ../../../../usr/include mlock-random-test.c -lrt -lcap -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm/mlock-random-test gcc -Wall -I ../../../../usr/include mlock2-tests.c -lrt -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm/mlock2-tests gcc -Wall -I ../../../../usr/include on-fault-limit.c -lrt -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm/on-fault-limit gcc -Wall -I ../../../../usr/include thuge-gen.c -lrt -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm/thuge-gen gcc -Wall -I ../../../../usr/include transhuge-stress.c -lrt -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm/transhuge-stress gcc -Wall -I ../../../../usr/include userfaultfd.c -lrt -lpthread -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm/userfaultfd gcc -Wall -I ../../../../usr/include va_128TBswitch.c -lrt -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm/va_128TBswitch gcc -Wall -I ../../../../usr/include virtual_address_range.c -lrt -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm/virtual_address_range TAP version 13 selftests: vm: run_vmtests ======================================== --------------------- running hugepage-mmap --------------------- Returned address is 0x7f167f600000 First hex is 0 First hex is 3020100 [PASS] -------------------- running hugepage-shm -------------------- shmid: 0x0 shmaddr: 0x7fe58d200000 Starting the writes: ................................................................................................................................................................................................................................................................ Starting the Check...Done. [PASS] ------------------- running map_hugetlb ------------------- Returned address is 0x7f345ba00000 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: 3978 2107 bounces: 30, mode: racing ver poll, userfaults: 2849 2899 bounces: 29, mode: rnd ver poll, userfaults: 4510 4509 bounces: 28, mode: ver poll, userfaults: 6287 6509 bounces: 27, mode: rnd racing poll, userfaults: 4026 1861 bounces: 26, mode: racing poll, userfaults: 2533 3049 bounces: 25, mode: rnd poll, userfaults: 4496 4627 bounces: 24, mode: poll, userfaults: 6576 6490 bounces: 23, mode: rnd racing ver, userfaults: 4727 4202 bounces: 22, mode: racing ver, userfaults: 5860 5621 bounces: 21, mode: rnd ver, userfaults: 4284 4028 bounces: 20, mode: ver, userfaults: 4920 4256 bounces: 19, mode: rnd racing, userfaults: 5621 2349 bounces: 18, mode: racing, userfaults: 1683 1170 bounces: 17, mode: rnd, userfaults: 5171 5504 bounces: 16, mode:, userfaults: 7026 6895 bounces: 15, mode: rnd racing ver poll, userfaults: 3638 2303 bounces: 14, mode: racing ver poll, userfaults: 565 1029 bounces: 13, mode: rnd ver poll, userfaults: 3694 4300 bounces: 12, mode: ver poll, userfaults: 6684 6430 bounces: 11, mode: rnd racing poll, userfaults: 3292 2242 bounces: 10, mode: racing poll, userfaults: 3979 3985 bounces: 9, mode: rnd poll, userfaults: 4860 4842 bounces: 8, mode: poll, userfaults: 7340 5522 bounces: 7, mode: rnd racing ver, userfaults: 3853 4519 bounces: 6, mode: racing ver, userfaults: 3501 2921 bounces: 5, mode: rnd ver, userfaults: 7766 7163 bounces: 4, mode: ver, userfaults: 6542 5050 bounces: 3, mode: rnd racing, userfaults: 6864 2262 bounces: 2, mode: racing, userfaults: 3593 4596 bounces: 1, mode: rnd, userfaults: 8045 7708 bounces: 0, mode:, userfaults: 3616 2779 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: 13 16 bounces: 30, mode: racing ver poll, userfaults: 8 12 bounces: 29, mode: rnd ver poll, userfaults: 17 13 bounces: 28, mode: ver poll, userfaults: 7 9 bounces: 27, mode: rnd racing poll, userfaults: 12 13 bounces: 26, mode: racing poll, userfaults: 11 18 bounces: 25, mode: rnd poll, userfaults: 16 17 bounces: 24, mode: poll, userfaults: 11 9 bounces: 23, mode: rnd racing ver, userfaults: 18 14 bounces: 22, mode: racing ver, userfaults: 10 11 bounces: 21, mode: rnd ver, userfaults: 17 17 bounces: 20, mode: ver, userfaults: 17 21 bounces: 19, mode: rnd racing, userfaults: 25 9 bounces: 18, mode: racing, userfaults: 14 10 bounces: 17, mode: rnd, userfaults: 29 6 bounces: 16, mode:, userfaults: 21 10 bounces: 15, mode: rnd racing ver poll, userfaults: 19 15 bounces: 14, mode: racing ver poll, userfaults: 10 8 bounces: 13, mode: rnd ver poll, userfaults: 16 13 bounces: 12, mode: ver poll, userfaults: 9 8 bounces: 11, mode: rnd racing poll, userfaults: 11 17 bounces: 10, mode: racing poll, userfaults: 8 4 bounces: 9, mode: rnd poll, userfaults: 15 7 bounces: 8, mode: poll, userfaults: 16 13 bounces: 7, mode: rnd racing ver, userfaults: 16 12 bounces: 6, mode: racing ver, userfaults: 10 13 bounces: 5, mode: rnd ver, userfaults: 22 15 bounces: 4, mode: ver, userfaults: 16 19 bounces: 3, mode: rnd racing, userfaults: 18 14 bounces: 2, mode: racing, userfaults: 8 3 bounces: 1, mode: rnd, userfaults: 19 12 bounces: 0, mode:, userfaults: 18 17 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, userfaults: 952 4613 bounces: 30, mode: racing ver poll, userfaults: 5965 933 bounces: 29, mode: rnd ver poll, userfaults: 4657 4474 bounces: 28, mode: ver poll, userfaults: 6737 6219 bounces: 27, mode: rnd racing poll, userfaults: 1540 4608 bounces: 26, mode: racing poll, userfaults: 2828 5560 bounces: 25, mode: rnd poll, userfaults: 4725 5586 bounces: 24, mode: poll, userfaults: 5526 4036 bounces: 23, mode: rnd racing ver, userfaults: 4374 3525 bounces: 22, mode: racing ver, userfaults: 3539 3076 bounces: 21, mode: rnd ver, userfaults: 5589 5200 bounces: 20, mode: ver, userfaults: 2999 2629 bounces: 19, mode: rnd racing, userfaults: 3456 4114 bounces: 18, mode: racing, userfaults: 5309 4279 bounces: 17, mode: rnd, userfaults: 4660 4934 bounces: 16, mode:, userfaults: 4554 4026 bounces: 15, mode: rnd racing ver poll, userfaults: 2651 3165 bounces: 14, mode: racing ver poll, userfaults: 1233 1422 bounces: 13, mode: rnd ver poll, userfaults: 4662 4908 bounces: 12, mode: ver poll, userfaults: 6739 6513 bounces: 11, mode: rnd racing poll, userfaults: 4339 2529 bounces: 10, mode: racing poll, userfaults: 5542 1817 bounces: 9, mode: rnd poll, userfaults: 4980 5655 bounces: 8, mode: poll, userfaults: 4049 4205 bounces: 7, mode: rnd racing ver, userfaults: 4235 3353 bounces: 6, mode: racing ver, userfaults: 4974 4570 bounces: 5, mode: rnd ver, userfaults: 4647 4608 bounces: 4, mode: ver, userfaults: 6322 6365 bounces: 3, mode: rnd racing, userfaults: 6326 2316 bounces: 2, mode: racing, userfaults: 4325 3840 bounces: 1, mode: rnd, userfaults: 5348 5317 bounces: 0, mode:, userfaults: 7319 7321 testing UFFDIO_ZEROPAGE: done. testing signal delivery: done. testing events (fork, remap, remove): userfaults: 32768 [PASS] ----------------------- running compaction_test ----------------------- [ignored_by_lkp] [PASS] ---------------------- running on-fault-limit ---------------------- [PASS] -------------------- running map_populate -------------------- [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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/vm' watchdog test: not in Makefile 2019-02-17 20:28:56 make TARGETS=watchdog make[1]: Entering directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/watchdog' gcc watchdog-test.c -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/watchdog/watchdog-test make[1]: Leaving directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/watchdog' ignored_by_lkp watchdog test ignored_by_lkp x86.mov_ss_trap test 2019-02-17 20:28:56 make run_tests -C x86 make: Entering directory '/usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/x86' gcc -m32 -o /usr/src/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/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 0xf7f0a000 [NOTE] Moving vDSO: [0xf7f0a000, 0xf7f0b000] -> [0xf7f32000, 0xf7f33000] [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 MPX XSTATE(s), can not run MPX tests XSAVE is supported by HW & OS XSAVE processor supported state mask: 0x7 XSAVE OS supported state mask: 0x7 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 clock_gettime for clock CLOCK_REALTIME (0)... 1550406543.760686908 1550406543.760691882 1550406543.760692427 [RUN] Testing clock_gettime for clock CLOCK_MONOTONIC (1)... 620.442148469 620.442148833 620.442149251 [RUN] Testing clock_gettime for clock CLOCK_PROCESS_CPUTIME_ID (2)... 0.000729669 0.000730516 0.000731225 [RUN] Testing clock_gettime for clock CLOCK_THREAD_CPUTIME_ID (3)... 0.000734202 0.000734861 0.000735552 [RUN] Testing clock_gettime for clock CLOCK_MONOTONIC_RAW (4)... 620.092138037 620.092138645 620.092139307 [RUN] Testing clock_gettime for clock CLOCK_REALTIME_COARSE (5)... 1550406543.760446639 1550406543.760446639 1550406543.760446639 [RUN] Testing clock_gettime for clock CLOCK_MONOTONIC_COARSE (6)... 620.441898638 620.441898638 620.441898638 [RUN] Testing clock_gettime for clock CLOCK_BOOTTIME (7)... 620.442169869 620.442170499 620.442171112 [RUN] Testing clock_gettime for clock CLOCK_REALTIME_ALARM (8)... 1550406543.760729780 1550406543.760730473 1550406543.760731210 [RUN] Testing clock_gettime for clock CLOCK_BOOTTIME_ALARM (9)... 620.442185511 620.442186204 620.442186909 [RUN] Testing clock_gettime for clock CLOCK_SGI_CYCLE (10)... [OK] No such clock. [RUN] Testing clock_gettime for clock CLOCK_TAI (11)... 1550406543.760740018 1550406543.760740375 1550406543.760740769 [RUN] Testing clock_gettime for clock invalid (-1)... [OK] No such clock. [RUN] Testing clock_gettime for clock invalid (-2147483648)... [OK] No such clock. [RUN] Testing clock_gettime for clock invalid (2147483647)... [OK] No such clock. [RUN] Testing gettimeofday... 1550406543.760748 1550406543.760748 1550406543.760749 [OK] timezones match: minuteswest=-480, dsttime=0 [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.000005 0.000000 [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 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] [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 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 0xf7fbe940 [OK] AT_SYSINFO maps to linux-gate.so.1, loaded at 0x0xf7fbe000 [RUN] Set TF and check a fast syscall In vsyscall at 0xf7fbe940, returning to 0xf7daa877 SIGTRAP at 0xf7fbe940 0xf7fbe940 0xf7daa877 [OK] NR = 20, args = 1, 2, 3, 4, 5, 6 SIGTRAP at 0xf7fbe941 0xf7fbe941 0xf7daa877 [OK] NR = 20, args = 1, 2, 3, 4, 5, 6 SIGTRAP at 0xf7fbe942 0xf7fbe942 0xf7daa877 [OK] NR = 20, args = 1, 2, 3, 4, 5, 6 SIGTRAP at 0xf7fbe943 0xf7fbe943 0xf7daa877 [OK] NR = 20, args = 1, 2, 3, 4, 5, 6 SIGTRAP at 0xf7fbe945 0xf7fbe945 0xf7daa877 [OK] NR = 20, args = 1, 2, 3, 4, 5, 6 SIGTRAP at 0xf7fbe94a 0xf7fbe94a 0xf7daa877 [OK] NR = 9970, args = 1, 2, 3, 4, 5, 6 SIGTRAP at 0xf7fbe94b 0xf7fbe94b 0xf7daa877 [OK] NR = 9970, args = 1, 2, 3, 4, 5, 6 SIGTRAP at 0xf7fbe94c 0xf7fbe94c 0xf7daa877 [OK] NR = 9970, 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 = 0xf7fb7949) [OK] Restarted nr and args are correct [RUN] Change nr and args and restart the syscall (ip = 0xf7fb7949) [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 0x7fff79f20000 [NOTE] Moving vDSO: [0x7fff79f20000, 0x7fff79f21000] -> [0x7fc06a892000, 0x7fc06a893000] [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 MPX XSTATE(s), can not run MPX tests XSAVE is supported by HW & OS XSAVE processor supported state mask: 0x7 XSAVE OS supported state mask: 0x7 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 clock_gettime for clock CLOCK_REALTIME (0)... 1550406544.155541322 1550406544.155546385 1550406544.155546918 [RUN] Testing clock_gettime for clock CLOCK_MONOTONIC (1)... 620.837001654 620.837002024 620.837002431 [RUN] Testing clock_gettime for clock CLOCK_PROCESS_CPUTIME_ID (2)... 0.000599003 0.000600001 0.000600782 [RUN] Testing clock_gettime for clock CLOCK_THREAD_CPUTIME_ID (3)... 0.000602893 0.000603666 0.000604448 [RUN] Testing clock_gettime for clock CLOCK_MONOTONIC_RAW (4)... 620.486989405 620.486990045 620.486990718 [RUN] Testing clock_gettime for clock CLOCK_REALTIME_COARSE (5)... 1550406544.154446639 1550406544.154446639 1550406544.154446639 [RUN] Testing clock_gettime for clock CLOCK_MONOTONIC_COARSE (6)... 620.835898638 620.835898638 620.835898638 [RUN] Testing clock_gettime for clock CLOCK_BOOTTIME (7)... 620.837019749 620.837020415 620.837021128 [RUN] Testing clock_gettime for clock CLOCK_REALTIME_ALARM (8)... 1550406544.155583052 1550406544.156406993 1550406544.156407758 [RUN] Testing clock_gettime for clock CLOCK_BOOTTIME_ALARM (9)... 620.837861931 620.837862678 620.837863421 [RUN] Testing clock_gettime for clock CLOCK_SGI_CYCLE (10)... [OK] No such clock. [RUN] Testing clock_gettime for clock CLOCK_TAI (11)... 1550406544.156416536 1550406544.156416961 1550406544.156417379 [RUN] Testing clock_gettime for clock invalid (-1)... [OK] No such clock. [RUN] Testing clock_gettime for clock invalid (-2147483648)... [OK] No such clock. [RUN] Testing clock_gettime for clock invalid (2147483647)... [OK] No such clock. [RUN] Testing gettimeofday... 1550406544.156424 1550406544.156424 1550406544.156424 [OK] timezones match: minuteswest=-480, dsttime=0 [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.000004 0.000002 [OK] vDSO gettimeofday()'s timeval was okay vsyscall time offsets: 0.000005 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 = 0x7fd96d28b309) [OK] Restarted nr and args are correct [RUN] Change nr and args and restart the syscall (ip = 0x7fd96d28b309) [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/perf_selftests-x86_64-rhel-7.2-60b119cae86ecb300fa50fd107122e3568156991/tools/testing/selftests/x86' ignored_by_lkp zram test