Commit Graph

3849 Commits

Author SHA1 Message Date
kamil 3d6a33dc1e Add new ATF ptrace(2) tests for posix_spawn, reusing tests for fork/vfork
New tests:
 - posix_spawn_detach_spawner
 - posix_spawn_kill_spawner
 - posix_spawn_singalmasked
 - posix_spawn_singalignored

All test pass.
2019-06-12 17:07:11 +00:00
kamil 3bdf3dd9d4 Add new PTRACE_POSIX_SPAWN tests in ptrace(3)
Add test:
 - eventmask_preserved_posix_spawn
 - fork9..fork16
 - vfork9..vfork16
 - posix_spawn1..16

New tests verify semantics of PTRACE_POSIX_SPAWN.

All tests pass.
2019-06-11 23:30:05 +00:00
hannken 22d3f49885 Need rumpdev_disk for rumpfs_zfs. 2019-06-11 14:00:16 +00:00
blymn 1c4bb036d6 Fixed bug in curses library keyname, test now passes. 2019-06-11 10:23:36 +00:00
blymn aa404db794 Bracket strings being validated with markers to ensure sneaky whitespeace
is noticed.
2019-06-11 10:22:35 +00:00
gson dd9a375876 In the "got %d/%d" message printed at the end of the pingsize test,
make the latter number show the actual number of ICMP packets the test
attempted to send.  Thus, the two numbers can now be meaningfully
compared, and their difference indicates the number of packets lost.
2019-06-11 08:34:01 +00:00
blymn 347a95cdfb Fix dupwin test. 2019-06-11 08:09:35 +00:00
blymn 77b858f20e fix derwin test. 2019-06-11 08:00:38 +00:00
kamil 0b4f3508ae Add posix_spawn(3) ATF tests in t_ptrace_wait*
New tests verify whether forking process reports forking events to a
debugger.

Right now there is no support in the kernel for this system.
2019-06-10 22:16:06 +00:00
kamil 9faafe843f Add more verbosity to debug messages in t_ptrace_wait
Log func() file:line for each debug message.

Most messages are similar one with the other and this change allows easier
navigation in the code.
2019-06-10 21:18:04 +00:00
blymn 1a6faca1b0 Add a script that allows a check file to be created by cutting and
pasting the contents of the square brackets in the "Excess nn bytes
from slave" message emitted when the director is running in verbose
mode (-v).
2019-06-09 07:54:55 +00:00
blymn 94110ecce1 Adjust check files for changes in cursor positioning. 2019-06-09 07:49:42 +00:00
blymn 437fe1c40c Add an extra parameter to the h_run function so flags can be passed
to the director.
2019-06-09 07:48:47 +00:00
maxv d1002cd7eb Change the NVMM API to reduce data movements. Sent to tech-kern@. 2019-06-08 07:27:44 +00:00
christos da8b7648ed Add a $ORIGIN test 2019-06-07 21:18:16 +00:00
gson 1430c33c98 Add a regression test for PR bin/54154, or in other words, make sure
we get notified in a timely manner if gdb's XML support disappears
again.
2019-06-07 19:05:15 +00:00
mgorny d3a3574d75 Fix alignment of SSE filling data 2019-06-04 12:17:42 +00:00
mgorny e00cc41d74 Add more debug to register writing tests 2019-06-04 12:17:05 +00:00
kamil 173c420d5d Fix a mistake in a test for KERN_PROC_CWD
Emit properly ENOENT scenario in chroot. For some reason the final patch
did not hit the tree.
2019-06-01 22:18:23 +00:00
kamil 707a3080aa Add ATF KERN_PROC_CWD tests 2019-06-01 19:49:02 +00:00
kre 9c62ddd5c1 Deal with fallout from the addition of
KERN_PROC_CWD in sysctl(3)
That is kern.proc.$$.KERN_PROC_CWD (I think - not that it matters here)

The effect is that -lrump now requires -lrumpvfs

This set of changes fixes (I believe) regular dynamic builds,
more might be required for static builds (will be verified soon).
2019-06-01 06:59:17 +00:00
gson db7bf52ef5 Increase the timeout for the manyaddrs test case; the default is often
insufficient under qemu.
2019-05-31 15:36:10 +00:00
maya 6eb8aac828 Print result of function we tested (sinf),
not of function we didn't test (sin).

no need to print 17 digits for a float.

from Riastradh.
2019-05-27 00:24:37 +00:00
maya 5d16d0ee65 on i386 with FLT_EVAL_METHOD=2, the computation inside cosf was done in
binary80 arithmetic and never rounded to binary32 at the end, so it
appeared farther from the correctly rounded result in binary32 than expected.

Force binary32 using volatile float.

PR lib/54232: lib/libm/t_cos:cosf_angles regression on i386

From Riastradh.
2019-05-27 00:10:36 +00:00
blymn ae5e88e264 Add more tests for curses 2019-05-26 09:54:32 +00:00
blymn 81750f8bcd Start supporting wide char tests. 2019-05-26 07:47:37 +00:00
blymn 002c700f46 Adjust copywin test to work correctly with updated curses.
This fixes PR 54231
2019-05-26 07:28:14 +00:00
kamil f3514b55f9 Drop no longer needed macros KCOV_STORE() KCOV_LOAD() in kcov(4)
Corrently KCOV_STORE() and KCOV_LOAD() are equivalent to x=y.

Obtained from <R3x>
2019-05-26 01:44:34 +00:00
kamil 1a993279dc Add new user_va0_disable* tests in t_ptrace_wait*
Add tests:
 - user_va0_disable_pt_continue
 - user_va0_disable_pt_syscall
 - user_va0_disable_pt_detach

Assert that setting PC to 0x0 in PT_CONTINUE/PT_SYSCALL/PT_DETACH for
vm.user_va0_disable==0 is disallowed.
2019-05-25 03:25:08 +00:00
kamil 3978be2006 Add get_user_va0_disable() in t_ptrace_wait.h
Add a utility function to check vm.user_va0_disable.
2019-05-25 03:22:53 +00:00
christos 64bf11ba3e unexpand 2019-05-21 04:10:20 +00:00
christos 38217df340 add printf attribute 2019-05-21 04:09:46 +00:00
kre 8b2a560acf Make the t_subr_prf test build after changes to sys/kern/subr_prf.c
and while here add a simple test for the new kernel vasprintf().
2019-05-21 03:46:45 +00:00
blymn 84da1bf133 Add option to specify an alternate library location to allow testing
a development library version without installing it.
2019-05-19 22:34:23 +00:00
christos af5402251e Add explanatory text 2019-05-15 13:43:45 +00:00
christos 292b510fe2 clang ifunc's on powerpc require secure-plt. 2019-05-14 19:07:07 +00:00
bad 48e354a3ed Get rid of all the -lrumpdev and -lrumpvfs that are no longer needed
after moving rump's mainbus from rumpdev to rumpkern.

Produces the same atf-run results as before.
2019-05-13 17:55:07 +00:00
blymn ac3404f424 Provide correct validation after curses change. 2019-05-12 02:37:24 +00:00
maxv bfb4017486 Rework the machine configuration interface.
Provide three ranges in the conf space: <libnvmm:0-100>, <MI:100-200> and
<MD:200-...>. Remove nvmm_callbacks_register(), and replace it by the conf
op NVMM_MACH_CONF_CALLBACKS, handled by libnvmm. The callbacks are now
per-machine, and the emulators should now do:

-	nvmm_callbacks_register(&cbs);
+	nvmm_machine_configure(&mach, NVMM_MACH_CONF_CALLBACKS, &cbs);

This provides more granularity, for example if the process runs two VMs
and wants different callbacks for each.
2019-05-11 07:31:56 +00:00
mgorny 989594cf4b Add PT_SET*REGS tests for mm/xmm registers. 2019-05-10 18:07:10 +00:00
mgorny d0d1caee46 Remove obsolete size asserts. 2019-05-10 17:34:26 +00:00
mgorny d8aacecd69 Use newly-filled i386 reg structs in PT_GETFPREGS & PT_GETXMMREGS tests. 2019-05-10 16:28:00 +00:00
mgorny 2d583f722a Add tests for PT_SETREGS 2019-05-10 16:24:35 +00:00
mgorny 873249d162 Add ptrace() tests for reading mm* and xmm* registers 2019-05-09 13:07:35 +00:00
christos 7ef0a4297e fix unused variable warnings. 2019-05-06 00:08:13 +00:00
mgorny f07d526de7 Introduce tests for reading r8..r15 registers. 2019-05-05 18:16:39 +00:00
mgorny e6dd84e00f Reintroduce i386 tests for general-purpose registers, without MMX req
Reintroduce the test for reading i386 general-purpose register values
from the debugged program.  This time it's split into one test for the six
registers not normally used by the compiler (eax..edx, esi, edi), and another
for ebp, esp.  This leaves enough free registers for the latter to work
without MMX.
2019-05-05 18:15:40 +00:00
mgorny b3185a33be Revert i386_regs_gp_read as it fails on non-MMX systems. 2019-05-05 15:05:22 +00:00
mgorny 15af42397a Add tests for reading pre-set general purpose register values via PT_GETREGS.
Add new tests verifying that PT_GETREGS provides correct register values
from the underlying program.  The test uses inline assembly in the child program
to set registers to well-known constants, then compares the results obtained
via PT_GETREGS against them.

Reviewed by kamil.
2019-05-05 10:04:11 +00:00
kre b7fc669e75 Fix an (apparent) ancient ash bug, that was apparently fixed sometime
in the past, but managed to re-surface...

The expression "${0+\}}" should expand to "}" not "\}"
Almost all other shells handle it that way (incl FreeBSD & dash).

Issue pointed out by Martijn Dekker.

Add ATF sub-tests for the 4 old var expand operators (${var+word}
${var-word} ${var-word} and ${var?word} - including the forms
with the ':' included) and amongst those tests include test cases
for this issue, so if the bug tries to appear again, we can squash
it quicker.   (The newer pattern matching operators are already
well tested as part of testing patterns.)
2019-05-04 02:52:22 +00:00