Commit Graph

676 Commits

Author SHA1 Message Date
riz
12c055f488 Cause the tests to use plain files instead of vnd; for the kinds of
tests being done, vnd isn't needed and adds a potential resource
conflict issue on the system running the test.  As a bonus, the
tests run faster because less data is being shuffled around.
2010-12-03 05:23:46 +00:00
riz
539a0898bc Correct two function names:
grow_ffsv1_64k() -> grow_ffsv1_64k_head()
   shrink_ffsv1_64k() -> shrink_ffsv1_64k_head()
2010-12-03 04:10:36 +00:00
christos
bb46e8373d Add a new test for the latest variable expansion problem.
- Cannot test because make test prints:
  .: Can't open /usr/share/atf/atf.header.subr
- The shell script common code needs to be fixed to follow regular shell
  style.
  - variables are underquoted
  - uses `` instead of $()
  - does not use local for local variables, prefixes with undescore
  - needlessly uses braces for numeric and symbolic variables.
  - uses a fifo to grab output, and does not clean it up properly on error
  - should not exit with > 127 !!!
2010-12-03 01:29:55 +00:00
riz
07bc982d01 Update existing test cases and add a couple more:
- PR bin/44177 is fixed
- test grow/shrink on a ffsv1 with 64k blocksize, which was broken until
  recently
- make sure the partial cylinder left over is big enough so it doesn't
  get thrown away now that resize_ffs properly uses the last cyl.

XXX TODO:  add tests which ensure data integrity.
2010-12-02 22:03:23 +00:00
pooka
fe64a82d7b comment why vax is left out of all the fun 2010-12-01 07:12:03 +00:00
riz
3c3ed948f1 Add some basic tests of resize_ffs(8). The 'grow' test does nothing
more than create an empty file system, grow it, and makes sure fsck
finds the result clean.  The 'shrink' test does likewise for shrinking,
but is an expected failure at the moment due to PR bin/44177.
2010-11-30 23:17:27 +00:00
pooka
cece9ab74b cleanup server after use
(XXX: need better way to reboot it)
2010-11-30 22:15:02 +00:00
pooka
c2681d795d Add a simple and stress test cases for the rump remote syscall code.
Fun fact: since the server daemonizes into its own process group,
it's not in atf's pgrp.  Use rump_sys_reboot() in atf cleanup to
kill the server after the test.
2010-11-30 22:09:15 +00:00
pooka
4573b11817 don't include librump twice 2010-11-30 19:03:44 +00:00
joerg
236a44094d Test alignment of constructor / destructor calls as well as the stack
of new threads. Currently implement for i386 and AMD64.
2010-11-30 18:38:53 +00:00
pooka
cc18af6c52 one more test 2010-11-30 18:19:47 +00:00
pooka
fb6b034dfb check etfs key rules 2010-11-30 18:14:38 +00:00
pooka
74861a965c test makecn/freecn 2010-11-30 16:16:33 +00:00
pooka
fe0f81073d comment tyops 2010-11-30 14:31:14 +00:00
pooka
401a8e7a51 Get rid of the "sleep 1" by using rump_daemonize_begin/end().
Notably, md is a little tricky for this, since the ioctl that
configures the service also blocks in the kernel.  Therefore, use
an additional pthread to probe when the service is fully configured
and the server can detach.

Also, rawpart love.
2010-11-30 14:29:05 +00:00
pgoyette
67b7416103 Revert previous. The atf default timeout has been reverted, and the 90sec
timer I imposed here is still sometimes "not quite long enough" for the
tests to complete in an amd64 qemu/anita environment.
2010-11-29 18:21:15 +00:00
pooka
48e1b6d6d5 Add simple test for md(4) which just stuffs junk into /dev/rmd0d
and checks the same data can be retrieved.
2010-11-23 15:38:53 +00:00
mrg
9dd1efa373 vax doesn't have ieee fp, so, don't try to test ieee fp on vax. 2010-11-22 08:47:58 +00:00
njoly
c8fe673676 Add testcase for PR/44113: printf(3) should ignore zero padding for
nan/inf.
2010-11-19 18:18:53 +00:00
pooka
ec85f68cbf Convert skipped tests into proper xfails (a lazy bum is me).
prompted by pgoyette
2010-11-19 17:46:02 +00:00
pooka
b98ccd4da5 test snapshots on ffsv2 too 2010-11-19 12:36:49 +00:00
pgoyette
0b49450103 Since /usr/games is rarely in one's $PATH, provide an absolute path to the
test-program.  This lets automated testing reach and execute a couple more
tests rather than skipping them.

Discussed privately with pooka@
2010-11-19 12:31:36 +00:00
christos
e285c9c3f2 since the fix was reverted, revert the test. 2010-11-17 13:41:52 +00:00
tron
40d1f42309 Put my name in the author section. 2010-11-17 08:55:27 +00:00
christos
cbd46215a7 Fixed test that was expected to fail. 2010-11-16 18:25:03 +00:00
tron
55e8419d17 Split threaded environment test for the other environment tests as
suggested by Nicolas Joly in private e-mail. Linking a binary with
"libpthread" effects the beaviour of "libc" and we really want to
test both cases.
2010-11-16 14:03:47 +00:00
pooka
984ea70871 Add another set of problematic offsets from the quoted thread. 2010-11-15 22:01:44 +00:00
pooka
a77ca5ecfc double the timeout for slow hosts (from 1 to 2 seconds) 2010-11-15 21:29:39 +00:00
pooka
7bdde1ba6d Add test case for PR kern/44093 (fixed already, but tested to fail
without fix applied).
2010-11-15 20:39:00 +00:00
tron
91e8290e88 Add a new regression test "t_threaded" which tests using getenv_r(3),
putenv(3), setenv(3) and unsetenv(3) concurrently.
2010-11-14 19:19:24 +00:00
tron
18217b5088 Update tests for *env(3):
- Introduce randomness into "t_setenv" to avoid freeing environment
  variables exactly in the order they have been allocated.
  Also call unsetenv(3) twice to make sure it behaves well if the
  environment variable doesn't exist.
- "t_getenv" is no longer a known failure after getenv(3) and getenv_r(3)
  have been fixed.
2010-11-14 18:15:08 +00:00
tron
603058a76c Add a test for getenv(3) which fails at the moment because it doesn't
handle "=" in variable names properly.

I'll send out a diff for review soon which fixes this.
2010-11-13 21:08:36 +00:00
tron
926ab269df Improve testing of environment handling:
1.) Always check the return value of setenv(3) and unsetenv(3).
2.) Test that calling setenv(..., ..., 0) doesn't overwrite environment
    variables.
3.) Add a new test which mixes putenv(3) and setenv(3).
2010-11-13 18:52:55 +00:00
pooka
8c5fe271ac Remove accidentally committed part (which I need to run these tests
for a -current rump kernel on NetBSD 5.1)
2010-11-12 17:35:34 +00:00
pooka
284f30f020 Add test case for problem described by yamt in PR kern/44086.
"large writes with PUFFS_KFLAG_NOCACHE_PAGE ends up with EIO"
2010-11-12 17:33:28 +00:00
pooka
885c88049d fix 2010-11-11 22:44:50 +00:00
pooka
4b008acfd7 Add rudimentary cgd tests. The tests use cgd to transform a
plaintext into into an encrypted image and back into plaintext by
doing rump I/O on /dev/cgd.  There is one test to check that giving
the same password for both encryption and decryption produces the
same plaintext and another to check that giving a different passwords
does not produce the same plaintext.

This could be fairly easily extended to test all feature of cgd
(hint hint).  For example, now cgd.conf is included in cvs, but
the only reason for that is that without further hacking cgdconfig
uses /dev/random quality random to generate the salt for a
pkcsetcetc_kdf2 cgconfig -g, and making an automated test block on
the entropy pool is just not good form.  Details are everything.
2010-11-11 22:38:46 +00:00
pgoyette
1c0f72e4dd The libevent tests are fairly lengthy - each test case actually contains
about 20 or so mini-cases.  Increase the timeout for these tests to let
them run to completion.
2010-11-11 22:18:53 +00:00
pooka
88b6bdf19d skip tests which use features which rumpfs does not support
(namely: vop_rename and a file system size limit)
2010-11-11 17:44:44 +00:00
pooka
e60986a223 Add rumpfs to list of file systems to be autotested. 2010-11-11 17:39:29 +00:00
pooka
44198575b7 add necessary libs for t_posix_fadvise 2010-11-11 17:36:57 +00:00
pooka
1a160862e8 use atf interfaces for error reportage 2010-11-11 16:03:55 +00:00
pooka
f5449a5597 Actually, add a full tc for operating on fd's backed by regular
files (as opposed to pipes and devices).
2010-11-11 15:08:07 +00:00
pooka
7c8241e470 Add expected failure test for posix_fadvise() panic reported by yamt
on source-changes-d.
2010-11-11 14:50:58 +00:00
pooka
dbfa9a01cc Now that copyinstr() correctly returns error, trim the semaphore
name to fit into SEM_MAX_NAMELEN.
2010-11-10 11:14:12 +00:00
pooka
ff2758a541 Test copystr/copyinstr/copyoutstr focusing on the off-by-one cases.
As a notable caveat, this does not test the remote RPC paths of
those routines, which are arguably a little more complex.
2010-11-09 15:25:19 +00:00
jmmv
97a78f11fc Remove ugly workaround to skip this if unprivileged-user=_atf and just use
'su -m' as pooka@ did in t_mkdir.sh.  As he says this may still fail if
root's shell is csh; we need a better solution.
2010-11-09 13:01:33 +00:00
pooka
92603a1ff0 This test is cursed.
Yesterday I thought I committed the increased timeout and when the
test was still failing for the autotests n hours later I noticed
I had actually failed to commit it.  I did manage to commit something
in the evening, but the autotests were still failing this morning,
so I noticed I increased the timeout of the wrong test.  I wonder
what will go wrong this time...

(and p.s.: 10240 is probably slow because it's O(n^2) with a constant
of quite a few)
2010-11-09 11:48:35 +00:00
pooka
537f9e3a0b Increase timeout from 30 to 300 since this test runs for a long time.
XXX1: should 2x10240 loops really be *that* slow?
XXX2: is 10240 a sensible number to begin with?
2010-11-08 23:28:41 +00:00
pooka
d4a18bf9e3 another long-running test, so give it some buffer 2010-11-08 21:38:13 +00:00
pooka
ae2e5e944c increase timeouts of long-running tests 2010-11-08 19:06:12 +00:00
pooka
617f136424 Use su -m since _atf has nologin as its shell.
XXX: this will still fail if root's shell is csh
2010-11-08 15:25:50 +00:00
njoly
e7d0fdd058 Do not fail but skip tests if POSIX semaphores are not supported. 2010-11-08 13:05:49 +00:00
pooka
7119e5be14 convert program in PR kern/44054 to an atf test case 2010-11-07 19:53:42 +00:00
jmmv
decf2b5e0f Adjusts tests after import of atf-0.12:
- The use.fs property is gone.
- Mark the tests/fs/t_create:attrs test as broken when using the default
  unprivileged-user:_atf setting.  This probably deserves a fix somehow
  but I'm not sure at this point.
2010-11-07 17:51:16 +00:00
pooka
948c1978f6 test fss with underlying fs mounted with MNT_LOG 2010-11-05 11:32:09 +00:00
pooka
36445fc1a8 remove newline from error 2010-11-05 11:31:15 +00:00
christos
fb0d4bcc11 make that u_int, because it is passed as a socket option. 2010-11-03 21:44:46 +00:00
christos
b32d0df211 disable string again 2010-11-03 20:20:12 +00:00
christos
0f10aa9dce add Makefile.inc everywhere so that we can set WARNS=4 by default. Amazing
how many bugs this found :-)
2010-11-03 16:10:19 +00:00
christos
d3d3da9ee3 add a clearenv test. 2010-11-03 16:09:43 +00:00
pooka
dd96c7dab8 Make the shovel threads resilient to file server exit. 2010-11-01 16:27:07 +00:00
pooka
110455ef9e Create the process we use later in the test. Otherwise cwd doesn't
go right and the test fails because of attempting to create files
in the wrong directory.
2010-11-01 14:04:02 +00:00
pgoyette
4b71a48296 Fix format strings so it builds on amd64 2010-10-31 22:33:16 +00:00
pooka
bc79809067 Since rump implicit threads now bind to proc1 instead of proc0, we
need our shovel threads bound to proc1 instead of proc0 in order
to have access to the same set of descriptors as the implicit thread
which opens the fd in the rump kernel.

Also, sprinkle some printfs and make failure more dramatic.

fixes the puffs tests.  pointed out by pgoyette.
2010-10-31 22:05:35 +00:00
he
4613532253 There's apparently a circular dependency between -lrump and -lrumpuser.
This poses problems when linking statically, as for sun2.  Add -lrump
also after -lrumpuser, so that this links statically as well.
2010-10-31 13:54:31 +00:00
pooka
a745e32571 implicit pid is 1 instead of 0 now 2010-10-29 15:32:51 +00:00
njoly
a62c9cdf52 Add '-n' option to h_df helper tool to avoid picking wrong values if
the tested system has a similar mounted file system. Solve PR/43871.
2010-10-29 14:43:10 +00:00
njoly
5d63576039 Make putenv(3) fails with EINVAL for a null pointer, or for a string
that either miss or start with a `=' character.

Adjust man page and testcase accordingly.
2010-10-25 20:35:36 +00:00
pgoyette
c829d16824 Due to timing discrepancies desribed in PR kern/43997, tickle the
watchdog just a little bit sooner.  This maintains the spirit of the
test while avoiding the actual bug.  This can be reverted once (if)
the PR is fixed.
2010-10-24 13:16:12 +00:00
pgoyette
7127b715c2 Add a third test-case to verify that disarming of the watchdog works. 2010-10-24 13:11:41 +00:00
jmmv
b27e7b1e81 Oh, wow. Loads of broken ipf test cases that went unnoticed because they
were unchecked errors.  Fix them.

These have been caught by the upcoming version of atf, which explicitly
does 'set -e' in shell test programs.
2010-10-19 16:36:36 +00:00
njoly
4c968434a3 Make setenv(3) follow the standard, by rejecting invalid strings. It
now fails with EINVAL errno when variable is NULL, empty or contains
an `=' character; or value is NULL.

Adjust the man page accordingly, and exercize them in the existing
environment testcase.
2010-10-16 11:23:41 +00:00
pooka
936f8998cf Use actual buffer size instead of sizeof(char *). Makes the test
work on non-64bit platforms.
2010-10-13 11:19:28 +00:00
pooka
6dec45da47 fix -DDEBUG 2010-10-13 10:31:00 +00:00
christos
6188013961 use "RZ()" instead of ATF_CHECK(), since ATF_CHECK does not deal with errno.
This is repulsive, specially the part about hard-coding the h_macros.h file
in the c code.
2010-10-11 15:48:57 +00:00
christos
99101ab637 don't use err(), from pooka.
CV: ----------------------------------------------------------------------
2010-10-11 15:16:01 +00:00
haad
06d49ab5e3 Import new test program for device-mapper driver it currently call dm_version_list
and dm_targets_list ioctl to test if dm driver inside rump works.

It will be disable for now, because I need to find out why if I run this
test by atf-run it fails while running h_dm by hand works.

XXX. component.c in rump/libdm calls devsw_attach before dm_modcmd can do
that therefore unmodified modcmd returns error.
2010-10-06 11:24:55 +00:00
christos
37a7ff776d Add tests for putenv(3) 2010-10-01 20:12:20 +00:00
tnozaki
93b7363c93 add fmemopen(3) derrived from POSIX:2008.
libc minor bump.
2010-09-24 09:21:53 +00:00
christos
1db2d29e54 unit test for environment. Grr, someone should make fixing the sets easier
otherwise people are not going to want to write unit-tests.
2010-09-23 17:38:08 +00:00
he
0549224c7a Reorder the library specifications, so that we don't depend on the
library dependencies recorded in shared libraries, allowing these
to be linked statically as well.
2010-09-23 09:39:14 +00:00
he
16b74f200d Do symbol renaming for these bits as well, so that we don't get
link-time errors caused by conflicts with normal user-space libraries
when we link statically.

The tests still pass for i386 after this set of changes, and this now
builds for sun2 (after a few more changes).
2010-09-23 09:38:14 +00:00
martin
92474b670c Query the raw partition at runtime 2010-09-11 16:03:41 +00:00
christos
5472a32d66 glue glob tests 2010-09-09 22:25:38 +00:00
njoly
7601b30df9 s/dirs/symlinks/ in USES_SYMLINKS message. 2010-09-09 11:42:52 +00:00
pooka
0e59fd4080 hold object lock across page unbusy 2010-09-09 09:59:48 +00:00
pooka
6a3566f5c8 vm object must be locked during page allocation. 2010-09-08 20:40:24 +00:00
pooka
d85e9c34b1 +tc (turns out the bug was elsewhere, but a test is always a test) 2010-09-07 17:09:28 +00:00
pooka
192b53ec54 fill in PR number: kern/43843 2010-09-06 15:27:18 +00:00
pooka
b28267edb9 symlink to a zero-len target (and watch tmpfs go kabloom) 2010-09-06 15:21:34 +00:00
christos
758507e1aa Add tests for GLOB_STAR 2010-09-06 14:41:21 +00:00
he
5b0dfc8c63 Re-order libraries so that this links statically as well. 2010-09-02 16:55:15 +00:00
pooka
a3acbf5ec9 Actually use the imagename parameter. Also, fail with err instead
of atf_tc_fail since we are not directly under the control of atf.
2010-09-02 15:13:55 +00:00
pooka
5297756997 check that curlwp for an implicit context is NULL 2010-09-02 09:57:34 +00:00
pooka
52e6ad15e6 tests for rump_lwproc 2010-09-01 21:18:14 +00:00
pooka
2a47331e63 update to new rump lwp/proc interfaces 2010-09-01 19:41:27 +00:00
pooka
46d9a8715d Add RZ(), which is like RL() except that it checks against 0 and
uses the return value as the error number instead of errno.
2010-08-31 17:21:14 +00:00
pooka
c825a763b1 Make tcount volatile since a signal handler plays with it. 2010-08-30 08:30:17 +00:00
wiz
903fc89bbb Use explanation for GOP_ALLOC in message from version 1.1.
Ok pooka@.
2010-08-28 10:56:11 +00:00
pooka
27e297079d poll the putter fd instead of doing a blocking read. Long story
short:  we don't have to wait for the fs syncer to run for the
close to succeed.
2010-08-27 12:42:21 +00:00
pgoyette
c70e410288 Set the cmsg_len and msg_controllen in cmsg_sendfd testcase to match
the usage in the cmsg_sendfd_bounds case.  This test now passes on an
amd64 machine.

Change suggested by and OK'd by pooka@
2010-08-27 10:03:14 +00:00
pooka
faf9d0caed tests for builtin modules 2010-08-27 09:56:40 +00:00
pooka
ad209aacd5 Skip the full test for puffs now that we can (yes, atf issue #53) 2010-08-27 08:15:30 +00:00
pooka
d3df95fde3 Now that atf issue #53 has been fixed, remove the
child-must-dies-before-parent kludge.
2010-08-27 05:34:46 +00:00
pooka
1457068cd6 chdir() once per process is enough, no need to do it for every
thread (and doing so would cause occasional failures when some
thread would cd out of the test mountpoint while another thread
was still running in there).
2010-08-26 18:06:44 +00:00
pooka
cf1237d3ad setsockopt() wants int instead of size_t. Should fix this on LP64. 2010-08-26 17:24:14 +00:00
pooka
26f689f095 Put the workaround for PR kern/43799 into the common nfs unmount routine. 2010-08-26 15:07:16 +00:00
pooka
478209477d include some necessary headers to fix build 2010-08-26 08:19:18 +00:00
pooka
6ec601c384 * fail with errnos
* in case unmount fails, call rump_pub_vfs_mount_print() to print
  mountpoint status and dump active vnodes.
2010-08-25 18:16:06 +00:00
pooka
4541e13321 Start many more threads for the renamerace since it seems to catch
more errors.

Add a sleepkludge to deal with NFS's sillyrename brokenness.
2010-08-25 18:11:20 +00:00
jmmv
b283757fe6 Convert the libdes tests to atf. 2010-08-25 16:46:36 +00:00
pooka
5335766609 Test for cache sync noises after disk is ejected.
test case for PR kern/43785
2010-08-24 11:29:45 +00:00
pooka
b846a386dc Add a delay between startup of pinger and pingee here too.
XXX: there's apparently some race condition which appears to trigger
if a broadcast arp arrives around the same time as the arpwhohas
is sent.  This causes original packet to never be sent by the
arpwhohas requestor.  If this rings a bell to someone, please let
me know.
2010-08-23 10:49:27 +00:00
pgoyette
bb793fe2e6 Fix botched update. 2010-08-21 13:57:41 +00:00
pgoyette
60bf661b9d Add a new atf test-case to check that recursive module calls actually work. 2010-08-21 13:21:48 +00:00
pooka
909673cfa9 Start adding some I/O tests. This one does a sparse write to the
second page on a file, then writes the first, and finally checks
it can read something expected.  Adapted the from program supplied
by yamt in PR kern/36429.
2010-08-19 02:36:02 +00:00
pooka
217080730a .. put a timeout here just in case the receive does not increase
the counter.
2010-08-18 21:23:48 +00:00
pooka
b3495ecc48 Add a test for the "ping of death". Declare the test a success
when the receiver increases the "ip toolong" stat counter.
2010-08-18 21:22:34 +00:00
pooka
cfe11fb280 send pings in ascending order 2010-08-18 17:49:03 +00:00
pooka
9a3c295ef2 Add a two-way floodping test and a test which sends icmp echos with
various sizes.
2010-08-18 16:39:22 +00:00
pooka
75487b056b add a test which floodpings another host 2010-08-17 15:51:11 +00:00
pooka
5b778e8098 * add interface for virtif creation (in addition to the already present shmif)
* don't leak sockets
2010-08-17 12:04:34 +00:00
pooka
4439733de4 Add test which fills up the file system and expects ENOSPC. 2010-08-17 11:46:16 +00:00
pooka
26529eabd8 Need stdlib.h.
Thanks to Sverre Froyen for pointing this out.
2010-08-16 17:01:43 +00:00
pooka
d8a94b7513 Add a test case which tries to fhopen() a file handle filled with
random garbage.
2010-08-16 10:47:16 +00:00
pooka
19a6309ac7 Make random garbage more widely available. 2010-08-16 10:46:19 +00:00
pooka
5e33baaf50 Fill in PR kern/43745 now that it exists.
lfs_tfhremove: Expected failure: fhopen() for removed file succeeds (PR kern/43745): t_vfsops.c:161: Expected true value in rump_sys_fhopen(fhp, fhsize, O_RDONLY) == -1
    msdosfs_tfhremove: Expected failure: fhopen() for removed file succeeds (PR kern/43745): t_vfsops.c:161: Expected true value in rump_sys_fhopen(fhp, fhsize, O_RDONLY) == -1
2010-08-12 09:42:53 +00:00
pooka
d66cb1b117 Add test case for fhopenining a removed file. This fails on msdosfs
and lfs and causes a kernel panic on nfs.  I'll fix nfs soon and
file a PR for the other two.

Also panicked ffs a few hours ago, but was fixed by hannken.
Needless to say, this test was inspired by his fix.
2010-08-12 09:34:16 +00:00
pooka
7751445fe7 return correct errno 2010-08-12 09:22:14 +00:00
pooka
7c8855f1e2 Put some sleeps between forking the hosts. Otherwise a race may
be triggered which appears to cause one host to go berzerk with
sending carp advertisements and ignore ping requests.

I'll get to the bottom of this eventually, but this is a stopgap
to prevent the test from failing, hopefully -- the race doesn't
appear to trigger for me even with 0.1s on a loaded machine, so
0.5s should be better than fine.

(hi jmmv ;)
2010-08-11 13:10:03 +00:00
pooka
1a6a53bd1a Add a most elementary carp test: it forks off two processes,
configures carp in each of them, and after verifying that the shared
address responds to ping it brutally kills the master like a proper
carnivore (none of that ifconfig down sissy vegan nonsense).  Then
the test checks if the backup got its act together by pinging the
shared address and passes verdict.
2010-08-10 21:55:28 +00:00
pooka
7a2fe155ef add comment saying why the other test doesn't use fstest 2010-08-09 19:36:30 +00:00
pooka
471d3742de * convert 48k fs image test to FSTEST_CON/DESTRO
* make sure hugeblocksize doesn't accidentally succeed
2010-08-09 19:34:59 +00:00
pooka
721949c6da allow overriding of defaults 2010-08-09 19:32:26 +00:00
pooka
2fc19132b3 Check that mounting a file system with blocksize > MAXPHYS returns an error. 2010-08-09 17:42:26 +00:00
pooka
a2530e0bfd may be __unused 2010-08-09 15:39:41 +00:00
pooka
96f76684bb test that kernel reponds to ping 2010-08-09 15:08:43 +00:00
pooka
576ad32eba add a simple pingtest 2010-08-09 15:07:51 +00:00
pooka
edcef5fc34 Add test cases to check that sysmon/swwdog will panic and reboot
the kernel if left untickled.

Thanks to jmmv for the tip that doing this is possible in atf via
means of fork/wait.
2010-08-06 16:13:26 +00:00
pooka
2bb4b66566 remove leftover debug printf 2010-08-05 16:47:59 +00:00
joerg
4dfb749204 Rename h_initfini3 dso now that it is a simple module. 2010-08-04 14:59:39 +00:00
pooka
327d3aa746 need to update install filename too 2010-08-04 14:43:14 +00:00
pooka
937f490267 retain pr number in comment 2010-08-04 14:28:28 +00:00
pooka
d53b948607 fixed in kern_descrip.c:1.204 2010-08-04 14:26:18 +00:00
joerg
21847f857f Simplify. 2010-08-04 13:56:10 +00:00
joerg
b6fbda43e7 TESTSBASE is provided by bsd.own.mk now. 2010-08-04 13:52:23 +00:00
pooka
fe16bec2c9 Update test program to deal with uuencoded golden data.
XXX: is it not possible to use a pipeline in atf_check?
2010-08-04 13:49:48 +00:00
pooka
c6145c7409 Actually, some nagging voice in my head tells me that all binary files
in the repo should be uuencoded, so uuencode the golden audio output.
2010-08-04 13:41:03 +00:00
pooka
f0a81636b4 Add test of pad(4): stuff some audio into /dev/audio, read it from
/dev/pad.  Test that we got sensible output by comparing against
a previous audibly good result.

This exercises auconv, audio and pad.
2010-08-04 13:15:15 +00:00
drochner
55e1e4c9f3 .PARSEDIR doesn't work. at least not for me. Use .CURDIR instead
which makes a build with objdir succeed.
2010-08-03 17:24:45 +00:00
pooka
a8c7d81755 test case for PR kern/43694 2010-08-02 10:29:48 +00:00
pooka
1a22a69ce5 the old thread which does not return not returning a value
undetectable to all but the sh3 compiler trick
2010-08-02 09:44:23 +00:00
jmmv
2597405114 Merge the sort tests from regress/ into the existing atfified sort tests.
While doing this put the sort tests into a separate directory to follow
the convention of tests/util/.
2010-08-01 16:42:58 +00:00
pooka
5656c31054 * apparently operations can also fail with EIO and EOPNOTSUPP while
mountd hup is in progress.  strange, since I can't remember seeing
  those a few days ago when i ran this quite a lot.  anyway, don't
  make those errnos fatal failures.
* also in the "apparently" sector, although this test fails 100%
  reliably on my development host, it does not always trigger in the
  anita run.  so apply the current "race condition test" idiom
2010-08-01 15:38:27 +00:00
mlelstv
5a5f088539 The erroneous error codes described in kern/43616 have been fixed. 2010-08-01 14:50:54 +00:00
pooka
aec11d355a nfs now has tests in it, so need to convert from SUBDIR to
TESTS_SUBDIR.  Once again I failed to see that one coming.
2010-08-01 08:32:17 +00:00
pooka
9cf29ab3ea Fuzztest puffs mount. There are n different levels of testing:
each one pours more and more sane garbage into the args to that
the mount progresses further and further.  Level 8 (at least when
writing this comment) should be the one where mounting actually
succeeds.

Our metric of success is crash / no crash.
2010-07-31 17:11:45 +00:00
pooka
9749b7715b Revert macroization, as the default mountpath doesn't match the
default export path.
2010-07-30 21:10:44 +00:00
pooka
272fb16e97 Fold the puffs private and vfs tests mount/unmount routines together.
To achieve this, add a file system private parameter to the newfs
method (which will obviously not be used by vfs tests).

njoly ok
2010-07-30 16:15:05 +00:00
pooka
89211c7274 Wait for child (rumpnfsd) to die before declaring unmount successful.
(yes, should be in delfs, but delfs doesn't work due to the cleanup hassle)
2010-07-30 10:23:26 +00:00
pooka
4f870da128 whitespace 2010-07-29 14:50:32 +00:00
pooka
a963742ef4 Include & use lfs megamaid. 2010-07-29 14:47:44 +00:00
pooka
34eddb8c10 Rename xfs.c to fstest_xfs.c to avoid collisions with other
source files with the name xfs.c

ok njoly
2010-07-29 14:15:46 +00:00
hans
846cca4cda Revert to 1.1 and fix the casts by using uintptr_t. Ok jruoho. 2010-07-29 12:56:16 +00:00
jruoho
f560676c53 One more cast. 2010-07-29 12:17:31 +00:00
jruoho
07456be22e Fix build failure on AMD64, noted by njoly@. 2010-07-29 12:03:10 +00:00
jruoho
b226f3d0e3 Add a simple test for pthread_join(3). 2010-07-28 21:29:15 +00:00
pooka
862a7ebf2c install to right place. from pgoyette 2010-07-28 19:23:01 +00:00
pooka
6d749c2c28 Add test for service interruption while mountd handles SIGHUP.
This is an xfail test for the problem described in PR kern/5844

per highly surreptitious nudge from mrg
2010-07-28 15:24:54 +00:00
pooka
0f9324ee3d Move nfstestargs to header "because I need them". A more sweeping
action would be good here.
2010-07-28 15:16:50 +00:00
pooka
ce798b3d87 Defer definitely-nonreentrant signal handler to thread context.
This protects from rump kernel reentry and makes things not
crash && burn.
2010-07-28 15:15:22 +00:00
pooka
0d8d8d2b19 Make sure we are not executed in non-debug mode (which forks). 2010-07-28 15:12:17 +00:00
pooka
1411ba67f8 Don't ignore SIGHUP here since mountd uses it. The mountd signal
handler is installed later, so technically this is unnecessary,
but try to be complete.
2010-07-28 15:11:30 +00:00
pooka
5781e02fa3 Add FSTEST_CONSTRUCTOR/FSTEST_DESTRUCTOR which create/mount the
file system with default params.  Make ATF_FS_APPLY use the
constructor (can't use the destructor due to the (useless) cleanup).
2010-07-28 14:23:02 +00:00
joerg
cee90d4c4c Replace csu test case with a C++ based version. This makes the various
assembler routines obsolete. Be more exhaustive by testing dynamically
linked, statically linked and dynamically loaded.

XXX currently hard-codes /usr/tests due to limitations of bsd.test.mk
2010-07-28 13:51:38 +00:00
macallan
7a5d0aeabe initialize a few variables to shut up compiler warnings 2010-07-27 14:04:47 +00:00
pooka
3dd552295f comment out lp64-offensive line (the syslog() calls are not used currently) 2010-07-26 19:24:35 +00:00
pooka
f64ec08558 Install the exports file too so that the server can find it. 2010-07-26 19:17:37 +00:00
pooka
4c4a775b33 Add for-fun cast ... no, not really. casting is never fun.
But now this code builds both on 5.0 and -current.
2010-07-26 18:51:02 +00:00
pooka
13a893ded4 retire unwieldy casts 2010-07-26 18:47:36 +00:00
pooka
2823460ad3 make unsignedness match 2010-07-26 17:53:21 +00:00
pooka
ee762b35da need to link in nfs client bits 2010-07-26 16:25:19 +00:00
pooka
fd87d4c523 fix TESTSDIR 2010-07-26 16:17:21 +00:00
pooka
82233993ff Add NFS to the list of file systems exercised by the "vfs" tests.
How it works:
NFS tests fork and exec the nfs service from fs/nfs/nfsservice.
The child then:
  a) creates a FFS file system
  b) mounts it
  c) starts rpcbind
  d) starts mountd
  e) starts nfsd
  f) handles requests

The client, as expected, does the standard RPC regotiation and
calls mount(MOUNT_NFS).  It then proceeds to execute the test.

An individual test which executes everything described above and
does a few file operations on the NFS mount takes 0.16s wall time
on my laptop from start to finish.  This means it is feasible to
run hundreds of tests while still getting results in a timely
fashion.

Like in other networked tests, the two processes are connected via
the rump shmif which uses mmapped files as ethernet busses.  The
entire test suite can be executed by an unprivileged account.

As a side effect, these tests exercise also the kernel NFS server
in addition to the kernel NFS client.

While everything is currently targetted at executing the vfs tests,
there is no reason this could not be extended to exercise features
specific to NFS.  For example, the server can run through all
exportable file system types, permissions can be tested, etc.
2010-07-26 16:15:49 +00:00
pooka
e0ac41f174 Add libc rpc bits modified to be suitable for testing the nfs
server & client.
2010-07-26 15:56:45 +00:00
pooka
25f5a6a3a9 Add NFS service suitable for use in testing. 2010-07-26 15:53:00 +00:00
pooka
522a0d0c47 catch "child died" 2010-07-26 14:53:52 +00:00
pooka
3c23c993d0 Remove stuff handled by common code now. 2010-07-26 14:10:31 +00:00
pooka
6b62441252 Calculate broadcast IP instead of requiring it as a config parameter. 2010-07-26 14:07:04 +00:00
njoly
dccf0d483f Add create and rename testcases to exercize filenames longer than
{NAME_MAX}.
2010-07-26 13:37:48 +00:00
pooka
0f32fbbadd use normal include-protection 2010-07-25 22:29:15 +00:00
pooka
e8fbc2f15e necessary headers 2010-07-25 22:28:48 +00:00
pooka
3185d2a443 Add xfail test for kernel diagnostic panic described in PR kern/43664 2010-07-25 21:42:08 +00:00
pooka
772871ea1c make interface/routing configuration a bit more generic 2010-07-25 21:39:20 +00:00
jmmv
8a0380e301 before_start_one_thread is not racy only in amd64; my confusion. Mark it
as an xfail everywhere and, while doing so, make the test longer so that
we trigger the failure all the time -- of course, being a race this may
still happen but the chances should be pretty low.
2010-07-21 17:23:08 +00:00
pooka
3ccd6a8fda support pathconf (more or less copypasted from ufs). for njoly's tests. 2010-07-21 06:58:25 +00:00
njoly
898bc4f345 Update ATF_TC_FSADD macro use ATF cleanup function. And call
xx_fstest_delfs() from here instead of test body.
2010-07-20 17:44:01 +00:00
pooka
58f45c4ce6 common cannot be a TESTS_SUBDIR, since one of those without a test
behind it confuses atf-run.  change to SUBDIR as hinted by jmmv.
2010-07-20 15:09:32 +00:00
pooka
7d8af8c741 Need to use the ${PRINTOBJDIR} trick for LIBISPRIVATE ... 2010-07-19 16:32:01 +00:00
pooka
cca4b54ef7 Include h_fsmacros instead of ffs.c and link in test lib. 2010-07-19 16:22:05 +00:00
pooka
1901d7bfe1 * namespace some macros under FSTEST
* inline atf_check_tc() since this is a header
2010-07-19 16:21:22 +00:00
pooka
370c9ab597 Convert the file system test common routines into a library to
facilitate more complex user-side stuff (like the lfs cleaner and
nfs rpc code), which are non-trivial to do by #include.
2010-07-19 16:09:07 +00:00
pooka
95cbf37326 add missing headers 2010-07-19 16:00:45 +00:00
pooka
55cb844525 convert to newstyle automagic rump compat syscalls 2010-07-19 15:35:38 +00:00
jmmv
28cce38f11 Split the before_start test in two: one that does not use threads and one
that does.  The former works all the time but the latter gets consistently
stuck on amd64.  Mark the latter as an expected timeout (should be a "race
condition" test, but atf does not have such a thing yet[1]).

This clears the test failures, at least, under anita running NetBSD/i386.

From pooka@: this could well be because calling sem_post(3) from a signal
handler can't possibly do the right thing with the pthread implementation.
However, according to signal(7), sem_post(3) is signal-async safe...

While here, program alarms using a timeout shorter than 1 second to speed
up the execution of the tests.

1: Good thing is I finally understand what a "race condition" test looks
like, I believe.
2010-07-19 10:31:46 +00:00
jmmv
e1c433700e Refactor this test program: make test cases more granular, use atf_check
to validate the execution of sort(1) and do not bother removing temporary
files.

This is in preparation to merge the tests for sort(1) that still live in
regress/usr.bin/sort/stests.
2010-07-18 22:58:14 +00:00
pooka
510b2ec795 Reduce sleep time for practically the same effect. Until atf can
do parallel test execution, tests which spend 99.9999% of their
execution sleeping are not nice.
2010-07-18 22:30:55 +00:00
pooka
1d14124dd5 fix routine name in error message 2010-07-18 12:43:22 +00:00
jmmv
cb5d4b0864 Convert the libobjc tests to atf. While doing this, make the tests actually
check that things work.
2010-07-18 12:41:51 +00:00
jmmv
2f0d388071 Remove the ATF_CHECK calls I added during the conversion of this test to
atf.  They break on i386 (because the test was conceptually broken anyway);
reported by pooka@ in private mail.

Now... the current test does not actually check anything AFAICT... but this
is how it was before.
2010-07-18 12:16:19 +00:00
jmmv
7ce6f390a2 Convert the lint1 tests to atf.
Initial work from the GSoC 2008 project by Lukasz Strzygowski.
2010-07-18 10:11:00 +00:00
jmmv
6cbeb05cb2 Convert the include tests to atf.
Initial work from the GSoC 2008 project by Lukasz Strzygowski.
2010-07-17 19:26:27 +00:00
jmmv
bbd81cb35e Convert the csu tests to atf.
Initial work from the GSoC 2008 project by Lukasz Strzygowski.
2010-07-17 19:25:26 +00:00
pooka
3023bfbdf9 Some of the msdosfs tests are killed by SSP due to stack limit
being exceeded.  I cannot figure out what is going on by code
reading, nor repeat this either on my desktop or in qemu, so skip
those tests for msdosfs until I can get to the bottom of it.
2010-07-16 19:16:41 +00:00
njoly
ffa14f5342 Add missing pthread_mutex_init call in mutex3 testcase. 2010-07-16 18:16:43 +00:00
njoly
139189167c Add some sanity checks for statvfs values. 2010-07-16 17:49:38 +00:00
jmmv
ac555471ca Convert the libpthread tests to atf.
Initial work from the GSoC 2008 project by Lukasz Strzygowski.

I think that this, together with the previous conversion of librt, obsoletes
the tests in the semaphore/ directory.  Will investigate later.
2010-07-16 15:42:53 +00:00
pooka
978c8480cc skip directory test on sysvbfs 2010-07-16 14:14:27 +00:00
jmmv
c505c44298 Convert the libposix, libprop, librt, libskey and libutil tests to ATF.
Initial work from the GSoC 2008 project by Lukasz Strzygowski.
2010-07-16 13:56:31 +00:00
pooka
b7d235f4da Fix typo in comment. comment tested by wizd. 2010-07-16 13:07:23 +00:00
pooka
16c5b04bd3 Fill in PR kern/43626 now that it exists. 2010-07-16 11:46:31 +00:00
pooka
8206e1e692 Do the famous renamerace test using directories. Uh oh, bad idea.
PR coming soon.
2010-07-16 11:33:45 +00:00
pooka
b006a8b60d This test does not always fail for LFS, so apply same kludge as
elsewhere while waiting for atf to grow support for these cases.
2010-07-16 10:50:55 +00:00
jmmv
fc6db98b3b Add a couple of simple tests for sigaction(2): one for the case where flags
is set to 0 and the other for the case where we set SA_RESETHAND.

The latter test is intended to expose PR port-macppc/43619 and is marked as
an expected failure on such platform.
2010-07-14 21:47:06 +00:00
pooka
6314ba47ee xfail test on lfs. It goes badaboom faster than you can find your
multipass.  Borrow PR kern/43582 used earlier for rmdirrace, as it
looks pretty much like the same problem.
2010-07-14 21:44:40 +00:00
pooka
3b5bc723d2 Convert "The Original" rename race test from to vfs and retire the
ffs/tmpfs versions.  The only difference is that the origamical
one mounted ffs with MNT_LOG (and therein actually lay the bug).
2010-07-14 21:39:31 +00:00
pooka
5aa789e743 Check that nobody raced us into the source dir while it was unlocked
in preparation for rename.
2010-07-14 21:24:40 +00:00
pooka
ae0b9ccec6 Add an assortment of rename tests. Not complete, but at least tests
something.

This contains the tests for PR kern/43616 and PR kern/43617.
2010-07-14 20:45:48 +00:00
pooka
7d034c7a9d Return correct error values from a bunch of questionable renames.
There's no substitute for single-stepping do_sys_rename() into ffs
when trying to figure out what error should come from what layer...
well, at least apart from TNT.
2010-07-14 17:10:14 +00:00
pooka
6a86e782e9 * remove target node from right directory
* remove what i guess to be a useless if-clause (although with
  file systems you can never be sure)
2010-07-14 16:59:35 +00:00
pooka
28a6875445 check we don't rename onto a non-empty directory 2010-07-14 14:22:15 +00:00
pooka
58d9a55076 prevent rename of source directory under itself 2010-07-14 13:09:52 +00:00
jmmv
9d0b4b5bb8 Get rid of static Atffiles and let bsd.test.mk generate them on the fly. 2010-07-13 21:13:21 +00:00
pooka
2a5fd96f77 Add a few simple basic-level tests for vnodeops. They don't cover
corner-cases, but make sure things at least superficially work
(which they always don't).  More to come...
2010-07-13 18:13:10 +00:00
pooka
60f4d3c583 Link in puffs components for puffs tests. 2010-07-13 18:09:52 +00:00
pooka
34de412690 off_t -> uint64_t to hopefully avoid some lp64 signedness whines. 2010-07-13 17:49:24 +00:00
pooka
63ef4b38f6 Run puffs/dtfs as part of the vfs tests. 2010-07-13 16:48:15 +00:00
njoly
fb13fa89fd Add testcase data argument to all fstest helper functions.
Needed by pooka for puffs fstest support.
2010-07-13 15:50:31 +00:00
pooka
e9ce0fb090 make compile on HEAD 2010-07-13 11:53:47 +00:00
pooka
6463b41236 Add basic tests for vfsops.
tfilehandle is a test for PR kern/43605
2010-07-13 11:51:59 +00:00
pooka
5b92553888 Make the FSTYPE macros take tc instead of derivative type "type".
ok njoly
2010-07-13 11:12:19 +00:00
enami
5559382642 Make this compile again. 2010-07-13 01:42:21 +00:00
njoly
95f6e757bd Update filesystem helper functions namespace (from XXX_mount to
XXX_fstest_mount) to avoid conflicts with existing functions such as
puffs_mount.
2010-07-12 21:37:47 +00:00
njoly
e4723ab868 Pass down the test case data to the test function, to be able to use
meta-data informations such as srcdir. Requested by pooka.

While here remove fstype argument, and define it as a custom meta-data
(X-fs.type) instead.
2010-07-12 21:05:19 +00:00
pooka
84244a9f10 put stuff requiring -lpuffs behind -DPUFFSDUMP 2010-07-12 13:09:19 +00:00
pooka
373c282cc2 WARNS=2 2010-07-11 12:33:38 +00:00
pooka
a436045559 Add some basic tests for inactive/reclaim. To make this possible,
adjust the read/write shovel threads so, that we can tap into the
operations between puffs(9) and the file server.
2010-07-11 12:26:19 +00:00
pooka
3909f0ed5c Remove the lfs race condition hack now that it's properly in the
test instead of the fs-specific part.
2010-07-11 11:25:22 +00:00
mrg
6479f6e5b4 ldap is configured to depend upon MKCRYPTO no, so force MKLAP=no if
MKCRYPTO=no.
don't build pkg_install, libcrypto tests or rump_smbfs if MKCRYPTO=no.
mark librumpcrypto, rump_smb, pkg_*

fix set lists as appropriate.
2010-07-11 06:16:54 +00:00