--- - branch: netbsd-8 date: Thu Apr 12 13:02:21 UTC 2018 files: - new: 1.1.8.1 old: '1.1' path: src/tests/lib/libc/sys/msg.h pathrev: src/tests/lib/libc/sys/msg.h@1.1.8.1 type: modified - new: 1.1.8.1 old: '1.1' path: src/tests/lib/libc/sys/t_ptrace_wait.h pathrev: src/tests/lib/libc/sys/t_ptrace_wait.h@1.1.8.1 type: modified - new: 1.9.2.3 old: 1.9.2.2 path: src/tests/lib/libc/sys/t_ptrace_wait.c pathrev: src/tests/lib/libc/sys/t_ptrace_wait.c@1.9.2.3 type: modified - new: 1.1.8.2 old: 1.1.8.1 path: src/tests/lib/libc/sys/t_ptrace_x86_wait.h pathrev: src/tests/lib/libc/sys/t_ptrace_x86_wait.h@1.1.8.2 type: modified id: 20180412T130221Z.934f868e7e712f00f4fdb13800673ee830f0568b log: "Pull up following revision(s) (requested by kamil in ticket #711):\n\ttests/lib/libc/sys/t_ptrace_wait.c: revision 1.24-1.31\n\ttests/lib/libc/sys/t_ptrace_wait.h: revision 1.2\n\ttests/lib/libc/sys/t_ptrace_x86_wait.h: revision 1.4,1.5\n\ttests/lib/libc/sys/msg.h: revision 1.2\n\nCorrect all ATF failures in t_ptrace_x86_wait.h (debug registers)\n\nThis code after refactoring stopped calling functions that were designed\nto trigger expected behavior and thus, tests were breaking.\nSponsored by \n\nATF: Correct a race bug in attach2 (t_ptrace_wait*)\nAt the end of the test we resume a tracer and expect to observe it to\ncollect the debuggee. We cannot from a parent point of view wait for\ncollecting it with WNOHANG without a race.\n\nRemove the WNOHANG option from wait*(2) call. This corrects one type of\nrace.\n\nThis test is still racy for some other and unknown reason and this is bei=\nng\ninvestigated.\n\nSponsored by \n\nATF: Reenable attach2 in t_ptrace_wait*\n\nThe primary race specific to this test has been fixed in previous commit\n(wrong WNOHANG).\n\nThis test is still racy and breaks like once every 30,000 execution.\nThis is down like from once from every 100th execution in the past.\nThe remaning race is not specific to attach2 and I can reproduce it with\nat least attach1. It still looks like being specific to NetBSD and it's\nnot reproducible on Linux and FreeBSD. Perhaps a bug with pipe(2)/write(2=\n)/\nread(2) or close to these features.\n\nSponsored by \n\nAdd a new function in ATF t_ptrace_wait*: await_zombie_raw()\n\nAdd await_zombie_raw() that is the same as await_zombie(), whith an\naddition of additional \"useconds_t ms\" parameter indicating delays betwee=\nn\nnew polling for a zombie process.\n\nThis new function will be used for testing a race condition that has been=\nobserved occassionally crashing a test case -- returning duplicate entrie=\ns\nfor KERN_PROC_PID.\n\nSponsored by \n\nATF t_ptrace_wait*: Disable debug messages in msg.h\nmsg.h is a dummy IPC interface.\n\nDisable additional debugging logging here, especially wanted in race*\ntests.\n\nSponsored by \n\nATF: Add new test race1 in t_ptrace_wait*\n\nReuse the attach1's test body for race1.\n\nAdd a new test race1:\n Assert that await_zombie() in attach1 always finds a single\n process and no other error is reported\nrace1 requires HAVE_PID in wait(2)-like function.\n\nThis test is executed in a loop for 5 seconds (16k iterations on Intel i7=\n).\nA buggy kernel was asserting an error within this timeframe almost always=\n=2E\nThe bug in the kernel is now gone and this test is expected to pass\ncorrectly.\n\nSponsored by \n\nAdd check in ATF tests for security.models.extensions.user_set_dbregs\nIntroduce a new function can_we_set_dbregs() in the ATF ptrace(2) tests.\n\nIt uses lazy-bool evaluation whether a process can call PT_SETDBREGS.\nIn case of not being able to do so, print a message and mark a test\nas skipped:\n Either run this test as root or set sysctl(3)\n security.models.extensions.user_set_dbregs to 1\nNo functional change intended to the code flow of the existing tested\nscenarios.\n\nSponsored by \n\nImprove documentation of the ATF test t_ptrace_wait*: traceme2\nSet the description to:\n Verify that a signal emitted by a tracer to a child is caught by\n a signal handler.\n\nSponsored by \n\nMerge code in tests: fork1 and vfork1 (ATF t_ptrace_wait*)\n\nMarge bodies of two tests into the same function.\n\nAdd few checks for regular fork or not (vfork).\n\nSponsored by \n\nATF: ptrace: Merge code in fork2 and vfork2 tests with (v)fork1 ones\nReduce code duplication, use the same function body with conditional\nswitches.\n\nSponsored by \n\nATF t_ptrace_wait* refactoring: vforkdone1 and vforkdone2\n\nMerge vforkdone1 and vforkdone2 into other fork tests and reuse the same\nfunction body fork_test().\n\nThere is an implicit enhancement in vforkdone2 that it was skipping\nPTRACE_VFORK check. This test is now marked as expected failure.\nPR kern/51630\n\nSponsored by \n\nCover more fork/vfork/vforkdone scenarios in ATF ptrace(2) tests\n\nUse a shared common body for all the tests: fork1..fork8, vfork1..vfork8.=\nMerge vforkdone1 and vforkdone2 into vfork* tests.\n\nAll the (v?)fork[1-8] tests cover:\n - calling either fork(2) or vfork(2)\n - tracking either enabled or disabled FORK, VFORK or VFORK_DONE\n\nAll the PTRACE_VFORK tests are marked as expected failure.\n\nSponsored by \n" module: src subject: 'CVS commit: [netbsd-8] src/tests/lib/libc/sys' unixtime: '1523538141' user: martin