Commit Graph

72 Commits

Author SHA1 Message Date
christos
0dc8cda9a3 Centralize the base rump libraries into a variable used by all the other
Makefiles so that we can make changes to it centrally as needed and have
less mess. Fixes the sun2 build that needs rumpvfs after librump after
the latest changes.
2020-03-01 18:08:12 +00:00
ad
2ddceed1d9 Hopefully fix some problems seen with MP support on non-x86, in particular
where curcpu() is defined as curlwp->l_cpu:

- mi_switch(): undo the ~2007ish optimisation to unlock curlwp before
  calling cpu_switchto().  It's not safe to let other actors mess with the
  LWP (in particular l->l_cpu) while it's still context switching.  This
  removes l->l_ctxswtch.

- Move the LP_RUNNING flag into l->l_flag and rename to LW_RUNNING since
  it's now covered by the LWP's lock.

- Ditch lwp_exit_switchaway() and just call mi_switch() instead.  Everything
  is in cache anyway so it wasn't buying much by trying to avoid saving old
  state.  This means cpu_switchto() will never be called with prevlwp ==
  NULL.

- Remove some KERNEL_LOCK handling which hasn't been needed for years.
2020-01-08 17:38:41 +00:00
martin
653f037ebe PR misc/54382: whenever open(2) is called with O_CREAT, make sure to
pass an open mode argument.
2019-07-16 17:29:17 +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
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
thorpej
032c1d01a1 Add a test case that exercises repeated sceduling and cancelling of a job,
with periodic dropping of the interlock.
2018-12-28 19:54:36 +00:00
thorpej
87d5cea604 Add -lrump after -lkernspace, because kernspace.a references symbols
from librump and hooray for static linking semantics.

Fixes sun2 build issue reported by kre@.

(XXX WTF did this only start failing after the addition of t_threadpool?)
2018-12-26 14:27:23 +00:00
thorpej
77118773d1 Add rump-based test cases for threadpool(9). 2018-12-24 21:42:05 +00:00
ozaki-r
61673e6ea4 Add a test case for workqueue_wait 2017-12-28 07:10:25 +00:00
maya
aef814ffa9 Add simple test for workqueue(9) 2017-09-29 12:42:36 +00:00
maya
d9fb11d888 Run both tests (rather than rumptest_threadjoin twice) 2017-09-29 10:22:36 +00:00
pgoyette
45d3394e0e Fix detection of expected results. The rump kernel code apparently
includes source-code line numbers in the messages, so rather than
hard-coding them in the test, just use a reg-ex to match the text.

Fixes PR bin/52207
2017-05-03 12:09:41 +00:00
christos
c54cb81102 Don't play with "../.." in includes for h_macros.h; deal with it centrally.
Minor fixes.
2017-01-13 21:30:39 +00:00
christos
25f1087ae3 more tests needing <sys/stat.h> 2017-01-10 22:36:29 +00:00
kre
674d7cd1f8 + -lrumpdev 2016-08-10 23:47:14 +00:00
pooka
11f923c4b5 include <stdbool.h> for bool 2016-01-25 12:21:42 +00:00
christos
abcb9cb972 bridge with the higher Makefile.inc 2016-01-23 18:54:15 +00:00
pooka
fff8d9a1f5 call previous with the correct args too 2015-01-21 15:19:01 +00:00
pooka
d08959252d check that setuid() works for procs with >1 lwp 2015-01-21 15:00:50 +00:00
pooka
0397f3a735 Move sysproxy support into a separate component, rumpkern_sysproxy,
instead of it being always provided by the rump kernel base.  This
move accomplishes two things:

1) it is no longer necessary to provide sysproxy hypercall stubs for
   platforms which do not want to use sysproxy
2) it is easier to reason about the security aspects, since configurations
   not linking the sysproxy component simply do not support remote
   system calls

discussed on rumpkernel-users
2015-01-07 22:24:03 +00:00
gson
56e22ea3cf On systems that have only 32M of memory, the stress_short and
stress_long tests thrash a lot, and the stress_long test sometimes
times out, so skip them if we don't have at least 64M.
2014-08-30 12:14:17 +00:00
he
f693807fd8 Fix static linking for the tests: -lrump is also used by -lrumpuser,
so we also need -lrump after -lrumpuser.  Fixes build for sun2.
2014-06-10 04:28:39 +00:00
njoly
17b707526d New testcase which checks that rump copyin/copyout/copyinstr/copyoutstr
version return EFAULT for special NULL "user" address.
ok pooka@.
2013-07-26 16:09:48 +00:00
hannken
0207daf65f Starting with Rev. 1.191 of kern/subr_pool.c a pool has to be inactive
for at least 10 seconds before it can be reclaimed.

Change the uvmwait test timeout from 10 to 30 seconds so it has a chance
to reclaim memory and succeed.
2012-03-17 18:00:28 +00:00
njoly
dc7e929d73 Adjust MEMFREE expected output to recent kmem(9) changes. 2012-01-30 13:05:52 +00:00
christos
88d695edac fix fallout from including signal.h in rump_syscallargs.h 2011-06-26 13:17:36 +00:00
pooka
c97bdaa639 in reconnect, ignore any all reconnect messages 2011-02-24 08:40:06 +00:00
pooka
d9795c60c4 explicitly set the signal model 2011-02-20 19:45:45 +00:00
pooka
362dcd5366 set reconnect property now that it's off by default 2011-02-19 09:56:45 +00:00
pooka
6296f7395c Limit test duration based on wall time instead of loops
(took a long time on slow platforms).
2011-02-07 20:05:09 +00:00
pooka
7605725b2b test for rumpclient reconnect feature 2011-01-24 17:51:29 +00:00
pooka
1a076ae981 test remove signal delivery 2011-01-14 13:23:15 +00:00
pooka
054b6364bc elementary tests for rump sigmodels 2011-01-14 13:08:00 +00:00
pooka
d086663369 Execute a variety of syscalls in the stress test, including opening
files and sockets.
2011-01-12 12:32:53 +00:00
pooka
0ba14b52f9 * run the killer stress test
* reduce default runtime to 5s
2011-01-12 11:39:20 +00:00
pooka
147af0c4be Give the stress queen two modes: one which nicely suggests an exit
and another one which keeps moet et chandon in her pretty cabinet.
2011-01-12 11:37:45 +00:00
pooka
8a712a9c10 Establish signal handler already in parent. Otherwise the child
might be killed before it has a chance to run.
2011-01-12 11:12:25 +00:00
pooka
cc362f9900 Print some more info in an attempt to try to understand why the
test fails in automated test runs but not my desktop.
2011-01-11 11:26:28 +00:00
pooka
617df94e9c Make sure stressclient worker threads complete their operation
instead of hanging.
2011-01-10 19:51:37 +00:00
pooka
e95a17b9a5 check that we actually go into the signal handler 2011-01-10 19:30:21 +00:00
pooka
58236b1f89 Don't use printf in a signal handler.
XXX: it would be nice if the deadlock with malloc were a little
more obvious, especially since gdb doesn't provide any clues unless
you compile libpthread with -g
2011-01-10 14:05:03 +00:00
pooka
964d204966 In case of LOCKDEBUG, expect certain text in the kernel output. 2011-01-06 13:42:45 +00:00
pooka
051cd8569e Add some tests for lock errors. Notably, some of them fare nicely
with just the pthread consistency checks (which are enabled by
default in rumpuser), but others require real LOCKDEBUG.
2011-01-06 13:12:52 +00:00
pooka
b2d5a8ae6c test rumpclient syscalls from a signal handler 2011-01-06 07:00:28 +00:00
pooka
d69edd9332 check that child exits with an expected status 2011-01-06 06:59:25 +00:00
pooka
8759cb8fa5 Some tests for rumpclient fork. 2011-01-05 17:19:09 +00:00
pooka
5c3365ce93 + rump_lwproc_newproc -> rump_lwproc_rfork()
+ add a tess for rump_lwproc_rfork()
2011-01-02 12:58:17 +00:00
pooka
73b0b48907 Retire h_simpleserver and use rump_server instead. 2010-12-13 13:39:42 +00:00
pooka
d59692159a h_reboot has been superceded by rump.halt 2010-12-12 12:53:35 +00:00
pooka
b15e66a6c2 use rump.halt in cleanup 2010-12-12 12:51:19 +00:00