Commit Graph

543 Commits

Author SHA1 Message Date
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
jmmv
f8a35c46be Do not use awk to generate the test program. Use some eval magic to generate
the tests on the fly alongside with easier-to-read functions.

While doing this, split the big monolithic test program into more granular
but cohesive test programs.

Phew, this one was tough.  And it's horrible to see that many these tests
(yes, the tests themselves probably) are broken.
2010-07-10 17:28:36 +00:00
jmmv
b9866b6c00 Do not use awk to generate the test program. Instead, just expand the
code.

While doing this, split the big monolithic test program into more granular
but cohesive test programs.
2010-07-10 16:43:25 +00:00
jmmv
2c43c89bca Do not use awk to generate the test program. Instead, replace it with some
eval magic (which is less magic than the previous awk stuff).
2010-07-10 16:16:12 +00:00
jmmv
f6debdb0e0 Add xfail test case for PR bin/43597 that I just submitted. 2010-07-10 15:57:37 +00:00
njoly
14f486761f Get rid of home made filesystem type strings and use MOUNT_xxx ones
instead. While here provide some macros which do test for a specific
type.
2010-07-09 14:30:53 +00:00
njoly
136ff61968 Pass down the filesystem type to the test funtion to allow fs-specific
callpoints.

Adjust t_rmdirrace by moving LFS test specific code from common/lfs.c,
and do skip sysvbfs which does not support rmdir(2).

from pooka.
2010-07-09 14:16:05 +00:00
pooka
fbcc1c5736 fill in PR number now that we have one 2010-07-08 13:30:53 +00:00
pooka
df74e53708 Add LFS to vfs test list. TODO: start cleanerd too.
It fails in a number of different ways.  Some of them seem to appear
as a function of the file system size (i'm not sure if it's because
the lack of the cleaner or not.  i'm guessing ``no'', though).

ok njoly
2010-07-08 13:21:02 +00:00
pooka
5544227ec7 Add test cases for file servers which present the root node not as
a directory but as a regular file, symbolic link (although that
can't be unmounted without killing the server!), fifo or character
device.
2010-07-07 10:49:51 +00:00
pooka
a8b198e2fa fix TESTSDIR 2010-07-06 16:44:26 +00:00
pooka
34edcf6bbe * need TESTSDIR
* remove force-fed -g
2010-07-06 16:43:48 +00:00
pooka
3d327ac6a6 NO ATFFILE HERE 2010-07-06 16:32:35 +00:00
pooka
42f6cd1ef7 Call rump_init() only after we have fork&exec'd the file server.
Otherwise the test would on rare occasions hang (I guess this was
due to calling sprintf/close between fork&exec in a threaded
program?).
2010-07-06 15:42:24 +00:00
pooka
81a57dd008 Add the most basic test for puffs(dtfs): mount/unmount. There's
still a lot of work to do here, but I want to get to testbuilding
the tree ;)

TODO examples:
* integrate this with rump_syspuffs (and remove the stupid ``sys'' from there)
* integrate with njoly's fs-independent tests
* cleanup a lot
* write more tests

*sigh*, I wish we'd had testing tools like this 5 years ago when
I was writing puffs.  It would have made a lot of things a lot
better and a lot easier.
2010-07-06 14:44:29 +00:00
pooka
3626443e21 Move the Delectable Test File System from share/examples/puffs/dtfs
to tests/fs/puffs/h_dtfs.

No functional change (apart from adjusting the Makefile for test builds).
2010-07-06 14:16:44 +00:00
pooka
7f396ca714 Move tests psshfs from fs/puffs to fs/psshfs. The former is going
to be populated by tests which actually test puffs soon.

jmmv ok
2010-07-06 14:06:21 +00:00
pooka
83eca23e73 * fill PR number to xfail now that we have one -- let's try not
to add any xfail tests without an associated PR
* move xfail to the correct place
2010-07-05 17:12:48 +00:00
jmmv
9c8ebeed66 Use expect_fail instead of defining xfail. Looks like I missed this one
during the import of atf 0.10.  Thanks pooka@.
2010-07-05 16:34:41 +00:00
jmmv
e834f57d5e Properly mark some test cases as having a cleanup routine. Stupidity of
the API?  Most likely; will revise it.

Fixes atf-run breaking when running t_psshfs.  This does not resolve the
underlying issue though, which is atf-run getting confused trying to
unmount the temporary mount point by itself (I think).  (I'm now wondering
if atf should be bothering about unmounting stuff at all.  Maybe not. It is
a tricky and uncommon thing.)
2010-07-05 16:27:08 +00:00
njoly
41df35f7e1 Fix more copyrights, where i forgot to add my name. 2010-07-05 14:53:03 +00:00
njoly
78043be0cf Fix copyright, noted by Jukka Ruohonen. 2010-07-05 13:03:19 +00:00
njoly
1511eb19e2 Add test program that use sample code from kern/41937, and fs rump
helpers to check currently supported filesystems.

t_rmdirrace (1/1): 5 test cases
    ext2fs_race: Passed.
    ffs_race: Passed.
    msdosfs_race: Passed.
    sysvbfs_race: Passed.
    tmpfs_race: Passed.
2010-07-05 12:53:58 +00:00
pooka
369e70628a descend into icmp 2010-07-04 19:31:30 +00:00
pooka
3665ca1dbf Add test case for PR kern/43548
Due to the nature of the feature under test, this one is a little
different, so let me explain how it works.

The test program forks and bootstraps a rump kernel in both processes.
It then configures shared memory interfaces in both.  shmif is nice
in that it uses a mmaped file as the bus and does not require root
privileges for communication between two (or more) processes.  The
child process then proceeds to increase icmp.returndatabytes as
indicated by the PR, while the parent process sets the global TTL
of the rump kernel to 1 (note: both values only affect the respective
rump kernels, not each other or more importantly the host kernel).
The parent then sends the bad packet which is supposed to be routed
by the child.  If ip_icmp.c was too old, *boom* + fail; otherwise
nothing bad happens and the test exists with success after one
second.

Eventually this test can be extended into a framework for automated
testing of any networking code which requires (arbitrarily complex)
routing setups.
2010-07-04 19:30:59 +00:00
pooka
d2c2528c3b Add a test case for PR kern/36681 demonstrating how easy it is to
get tmpfs rename to "tstile".

Note1: triggering this on any non-SMP system is not as easy (because
one system call tends to run from start to finish in one go) and
therefore I've limited it to i386 and amd64.  Incidentally, I'm
still waiting for the eternally elusive MI CPU_INFO_FOREACH (or at
least something else than a stupid macro) ...

Note2: this is a "race condition" test.  I tested it on my development
host and in qemu and it triggers pretty instantly.  But YMMV.
2010-07-04 12:43:23 +00:00
pooka
44307e8d84 Improve previous a bit more: now it works correctly in all cases
with or without xfail.

There is still room for improvement, though: with xfail the
errno != EROFS branch does not report why open failed.
2010-07-03 13:37:22 +00:00
pooka
a8bfb4f650 enhance fail check 2010-07-03 12:23:04 +00:00
pooka
8da786abde Remove ufs mount where not necessary due to rumpfs now supporting
VOP_WHITEOUT.
2010-07-03 12:10:35 +00:00
pooka
4fbc020440 Add xfail tests for two cases described in PR kern/43560. 2010-07-03 12:08:37 +00:00
jmmv
56e49f7fbe Re-add PR number and expected failure condition (as a comment, because the
problem is resolved).  Per pooka's request.
2010-07-03 08:31:37 +00:00
jmmv
7562f3f929 Replace custom xfail settings with the new expected failure support in
atf 0.10.
2010-07-03 08:18:30 +00:00
njoly
24850d26c8 Small xfail testcase to exercise 48k ffs image mount, from problem
reported by Hubert Feyrer on netbsd-users@.
2010-06-30 21:54:56 +00:00
njoly
1bb5701860 Add helper code and macros to ease writing filesystem tests with rump.
Support currently limited to ext2fs, ffs, msdos, sysvbfs and tmpfs.
2010-06-30 20:39:39 +00:00