•  


20 tests failing on 5.7.0: vsyscall_reverse_next and so on · Issue #3631 · rr-debugger/rr · GitHub
Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement . We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

20 tests failing on 5.7.0: vsyscall_reverse_next and so on #3631

Open
vt-alt opened this issue Oct 15, 2023 · 10 comments
Open

20 tests failing on 5.7.0: vsyscall_reverse_next and so on #3631

vt-alt opened this issue Oct 15, 2023 · 10 comments

Comments

@vt-alt
Copy link

On bare metal Intel(R) Core(TM) i9-10900 CPU @ 2.80GHz with Linux kernel v6.5.7 there are 20 test failures:

0% tests passed, 20 tests failed out of 20

Total Test time (real) = 2759.49 sec

The following tests FAILED:
        1236 - vsyscall_reverse_next (Failed)
        1237 - vsyscall_reverse_next-no-syscallbuf (Failed)
        1242 - watchpoint_at_sched (Failed)
        1243 - watchpoint_at_sched-no-syscallbuf (Failed)
        1244 - watchpoint_before_signal (Failed)
        1245 - watchpoint_before_signal-no-syscallbuf (Failed)
        1370 - replay_serve_files (Failed)
        1371 - replay_serve_files-no-syscallbuf (Failed)
        1392 - reverse_step_signal (Failed)
        1393 - reverse_step_signal-no-syscallbuf (Failed)
        1396 - reverse_watchpoint (Failed)
        1397 - reverse_watchpoint-no-syscallbuf (Failed)
        1430 - step_signal (Failed)
        1431 - step_signal-no-syscallbuf (Failed)
        1442 - tick0 (Failed)
        1443 - tick0-no-syscallbuf (Failed)
        1444 - tick0_less (Failed)
        1445 - tick0_less-no-syscallbuf (Failed)
        1470 - watchpoint_unaligned2 (Failed)
        1471 - watchpoint_unaligned2-no-syscallbuf (Failed)
Errors while running CTest
Output from these tests are in: /usr/lib64/rr/testsuite/obj/Testing/Temporary/LastTest.log
Use "--rerun-failed --output-on-failure" to re-run the failed cases verbosely.

I run ctest -VV -vv first and then ctest --rerun-failed -VV -vv as requested in #3625 .
Generated LastTest.log is there LastTest.9.log

@rocallahan
Copy link
Collaborator

Looking at replay_serve_files , the results are weird:

Reading /usr/lib64/rr/libtest_lib.so from remote target...
Error while mapping shared library sections:
`target:/usr/lib64/rr/libtest_lib.so': not in executable format: file format not recognized

@rocallahan
Copy link
Collaborator

Then for watchpoint_unaligned2 :

1470/1473 Testing: watchpoint_unaligned2
1470/1473 Test: watchpoint_unaligned2
Command: "/bin/bash" "source_dir/src/test/watchpoint_unaligned2.run" "watchpoint_unaligned2" "" "bin_dir" "120"
Directory: /usr/lib64/rr/testsuite/obj
"watchpoint_unaligned2" start time: Oct 15 15:47 MSK
Output:
----------------------------------------------------------
cp: cannot stat '/usr/bin/watchpoint_unaligned2': No such file or directory

Normally we don't install our tests in /usr/bin . Did you set the INSTALL_TESTSUITE option?

@vt-alt
Copy link
Author

vt-alt commented Oct 25, 2023

Yes I use -DINSTALL_TESTSUITE=ON then tests are in /usr/lib64/rr/testsuite/ then I cd /usr/lib64/rr/testsuite/obj and run ctest .

I don't see watchpoint_unaligned2 binary but its source is installed in /usr/lib64/rr/testsuite/rr/src/test/watchpoint_unaligned2.c .

Btw, build log is at https://git.altlinux.org/tasks/331703/build/500/x86_64/log

@GitMensch
Copy link
Contributor

Is there any difference when running ctest from the build directory (after all you commonly want to test before installing)?

@vt-alt
Copy link
Author

vt-alt commented Dec 10, 2023

  1. When building a package it's common to first install and then to run tests. Also it's never possible to run anything under root on a package build node (due to security concerns), that's why 'testsuite' packages are useful. Fedora creating rr-testsuite so I thought I'd do the same.
  2. Running ctest from the build directory:
# cd home/vt/hasher/chroot/usr/src/RPM/BUILD/rr-5.7.0/x86_64-alt-linux
-- this is because we do `-B x86_64-alt-linux`
# ln -sf .. source_dir
# ln -sf . bin_dir
-- test does not work without these symlinks
# export LD_LIBRARY_PATH=$PWD/lib/rr
-- for libtest_lib.so
# echo 1 > /proc/sys/kernel/perf_event_paranoid
# ctest --rerun-failed -VV -vv |& tee log
...
99% tests passed, 16 tests failed out of 1473

Total Test time (real) = 3927.57 sec

The following tests FAILED:
        490 - prctl_caps (Failed)
        491 - prctl_caps-no-syscallbuf (Failed)
        1236 - vsyscall_reverse_next (Failed)
        1237 - vsyscall_reverse_next-no-syscallbuf (Failed)
        1242 - watchpoint_at_sched (Failed)
        1243 - watchpoint_at_sched-no-syscallbuf (Failed)
        1244 - watchpoint_before_signal (Failed)
        1245 - watchpoint_before_signal-no-syscallbuf (Failed)
        1392 - reverse_step_signal (Failed)
        1393 - reverse_step_signal-no-syscallbuf (Failed)
        1396 - reverse_watchpoint (Failed)
        1397 - reverse_watchpoint-no-syscallbuf (Failed)
        1430 - step_signal (Failed)
        1431 - step_signal-no-syscallbuf (Failed)
        1470 - watchpoint_unaligned2 (Failed)
        1471 - watchpoint_unaligned2-no-syscallbuf (Failed)
Errors while running CTest
Output from these tests are in: /home/vt/hasher/chroot/usr/src/RPM/BUILD/rr-5.7.0/x86_64-alt-linux/Testing/Temporary/LastTest.log

Kernel now 6.5.9 . Do you want to see these logs?

@GitMensch
Copy link
Contributor

Kernel now 6.5.9 . Do you want to see these logs?

As some of the previous failing tests are now passing and other fail current logs will definitely be reasonable.

@vt-alt
Copy link
Author

Attaching the logs from the above run.
LastTest.log.gz
log.gz

@rocallahan
Copy link
Collaborator

vsyscall_reverse_next is failing because gdb can't find the sources:

1236: ^M(rr) n
1236: ^M7       in /usr/src/RPM/BUILD/rr-5.7.0/src/test/vsyscall_reverse_next.c
1236: ^M(rr) --------------------------------------------------

The test is looking for gdb to output the source line containing atomic_puts . This presumably a packaging issue of some kind.

prctl_caps is failing because for some reason we were able to do a CLONE_NEWUSER once, but then weren't able to do it again later:

490: FAILED at src/test/prctl_caps.c:95: !(0 == try_setup_ns(CLONE_NEWUSER)) errno:1 (Operation not permitted)

I don't know how that would happen.

@vt-alt
Copy link
Author

vt-alt commented Dec 26, 2023

I will retry the test. User namespaces could be disabled and I didn't enable them. I also run under root but didn't chroot into the build environment (as I thought having sources is enough). (This is not packaging issue since for the test I run ctest from the build directory.) Thanks!

@vt-alt
Copy link
Author

I have retried the tests. Commands so I remember them later and to reassure I did everything correctly.

# echo 0 > /proc/sys/kernel/perf_event_paranoid
# echo 0 > /proc/sys/kernel/userns_restrict
# mount --bind /proc /home/vt/hasher/chroot/proc
# mount --bind /dev /home/vt/hasher/chroot/dev
# mount --bind /dev/pts /home/vt/hasher/chroot/dev/pts
# mount --bind /sys /home/vt/hasher/chroot/sys
# chroot /home/vt/hasher/chroot
root@x86_64:/# cd /usr/src/RPM/BUILD/rr-5.7.0/x86_64-alt-linux
root@x86_64:/usr/src/RPM/BUILD/rr-5.7.0/x86_64-alt-linux# ln -sf .. source_dir
root@x86_64:/usr/src/RPM/BUILD/rr-5.7.0/x86_64-alt-linux# ln -sf . bin_dir
root@x86_64:/usr/src/RPM/BUILD/rr-5.7.0/x86_64-alt-linux# export LD_LIBRARY_PATH=$PWD/lib/rr
root@x86_64:/usr/src/RPM/BUILD/rr-5.7.0/x86_64-alt-linux# ctest --rerun-failed -VV -vv |& tee log

Test results:

The following tests FAILED:
        207 - futex_exit_race_sigsegv-no-syscallbuf (Failed)
        386 - mount_ns_exec2 (Failed)
        387 - mount_ns_exec2-no-syscallbuf (Failed)
        1242 - watchpoint_at_sched (Failed)
        1243 - watchpoint_at_sched-no-syscallbuf (Failed)
        1244 - watchpoint_before_signal (Failed)
        1245 - watchpoint_before_signal-no-syscallbuf (Failed)
        1392 - reverse_step_signal (Failed)
        1393 - reverse_step_signal-no-syscallbuf (Failed)
        1396 - reverse_watchpoint (Failed)
        1397 - reverse_watchpoint-no-syscallbuf (Failed)
        1458 - vfork_done_clone (Failed)
        1470 - watchpoint_unaligned2 (Failed)
        1471 - watchpoint_unaligned2-no-syscallbuf (Failed)
Errors while running CTest

Log attached.
20231226-log.gz
20231226-LastTest.log.gz

Sign up for free to join this conversation on GitHub . Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants
- "漢字路" 한글한자자동변환 서비스는 교육부 고전문헌국역지원사업의 지원으로 구축되었습니다.
- "漢字路" 한글한자자동변환 서비스는 전통문화연구회 "울산대학교한국어처리연구실 옥철영(IT융합전공)교수팀"에서 개발한 한글한자자동변환기를 바탕하여 지속적으로 공동 연구 개발하고 있는 서비스입니다.
- 현재 고유명사(인명, 지명등)을 비롯한 여러 변환오류가 있으며 이를 해결하고자 많은 연구 개발을 진행하고자 하고 있습니다. 이를 인지하시고 다른 곳에서 인용시 한자 변환 결과를 한번 더 검토하시고 사용해 주시기 바랍니다.
- 변환오류 및 건의,문의사항은 juntong@juntong.or.kr로 메일로 보내주시면 감사하겠습니다. .
Copyright ⓒ 2020 By '전통문화연구회(傳統文化硏究會)' All Rights reserved.
 한국   대만   중국   일본