Commit Graph

174261 Commits

Author SHA1 Message Date
cegger
b119a37e7e build fix: get prototype for cpu_upcall() 2008-10-17 08:12:23 +00:00
dogcow
cff6728f44 it appears the previous commit's sacrifice was "successful compilation with
NFS_V2_ONLY defined".
2008-10-17 06:40:21 +00:00
uebayasi
b4f453049e Oops; redo previous. 2008-10-17 00:46:07 +00:00
uebayasi
8922bc6f78 p_smutex was merged into p_lock some time ago. 2008-10-17 00:29:21 +00:00
wiz
ff9e9f093f Sort sections. 2008-10-16 22:22:08 +00:00
pooka
afbf917f75 Alpha requires 8k pages for mbuf size calculation to work (maybe
sparc64 too?).  Make it so.
2008-10-16 22:05:12 +00:00
christos
a7242b8e23 Another sacrifice to the stack protector gods. 2008-10-16 22:04:22 +00:00
abs
3a8955a63e Fix compilation if !INET6 2008-10-16 21:22:32 +00:00
wrstuden
7e10f527c2 Regen syscall tables. I forgot to do it after revivesa. While pooka
did some, not all are regenerated. Do them all at once for consistency.
2008-10-16 20:12:23 +00:00
abs
298c5ac7ad Add SB700 to the list of supported controllers, and include a caveat
that some SB700 controllers can hang under load when Native IDE
mode is selected in the system BIOS, but work fine in AHCI mode.
2008-10-16 19:51:58 +00:00
martin
553cb56cc1 Add misissing include and fix a few typos. 2008-10-16 19:38:36 +00:00
christos
75e8ce56c6 revert stack protector change. 2008-10-16 19:35:07 +00:00
christos
96d7a83037 don't use variable allocation on the stack. 2008-10-16 19:33:48 +00:00
pooka
7555810672 regen: ioctl 2008-10-16 19:33:11 +00:00
pooka
e3b0fcf963 One more rump syscall: ioctl (required for interface configuration) 2008-10-16 19:30:49 +00:00
martin
6af33ffecb Resurrect cpu_setfunc(), adapted to new world order. 2008-10-16 19:28:52 +00:00
pooka
6d68e64d68 Add an example of how to configure the virtual interface address
and the default gateway.

(this will probably go into some library eventually, but now it'll
just sit here as an example)
2008-10-16 19:28:26 +00:00
pooka
710b373bce Before I sort all the COMPAT_RIDICULOUSLYPREHISTORIC ioctl stuff
out, add a weak alias for ifunit() so that utils can be linked with
sockin.
2008-10-16 19:27:24 +00:00
pooka
a208c2294a Deal with the ld.so/linkset brokenness and compile all of libnet
and libnetinet into a big bunch for now.  If they were separate
libraries, the DOMAIN_DEFINE() in the latter on the linkline would
not get noticed at "boot" time because of the abovementioned
brokenness.  One of these days I'll add code to dlopen() the
libraries and resplit them, but this will allow things to work
until then.
2008-10-16 19:14:51 +00:00
pooka
2690ed220b Ignore stack-protector, since with nfs_bio.c it gets its life force
drained out.  Yes, this is a quick kludge, should rather fix
nfs_bio.c to be less silly.
2008-10-16 19:06:40 +00:00
hans
b0d4e5c1a7 include bpf headers so that the bpf calls actually do something. ok by cube. 2008-10-16 18:56:56 +00:00
wrstuden
27724c38ae Adjust locking on the sadata::sa_vps list. The main time we
walk the list, we're looking for a vp to do something with. We do
this in the signal code and in the timer code. The signal code already
runs with proc::p_lock held, so it's a very natural lock to use. The
timer code, however, calls into the sa timer code with a spinlock held.
Since proc::p_lock is an adaptable mutex, we can sleep to get it. Sleeping
with a spinlock is BAD. So proc::p_lock is _not_ the right lock there,
and something like sadata::sa_mutex would be best.

Address this difficulty by noting that both uses actually just read
the list. Changing the list of VPs is rare - once one's added, it stays
until the process ends. So make the locking protocol that to write the
list you have to hold both proc::p_lock and sadata::sa_mutex (taken
in that order). Thus holding either one individually grants read access.

This removes a case where we could sleep with timer_lock, a spinlock at
IPL_SCHED (!!), while trying to get p_lock. If that ever happened, we'd
pretty much be dead. So don't do that!

This fixes a merge botch from how I handled our gaining p_lock - p_lock
should not have simply replaced p_smutex.

While here, tweak the sa_unblock_userret() code for the case
when the blessed vp is actually running (on another CPU). Make its
resched RESCHED_IMMED so we whack the CPU. Addresses a hang I've
observed in starting firefox on occasion when I see one thread running
in userland and another thread sitting in lwpublk, which means it's on
the list of threads for which we need an unblocked upcall. This list is
one on which things should NOT linger.
2008-10-16 18:21:45 +00:00
dholland
7fb5a8c68e The field width passed for a %.*s printf format is supposed to be int, not
ptrdiff_t; on 64-bit platforms the latter will be too wide.
Adjust accordingly.
2008-10-16 17:58:29 +00:00
matt
7eac5d355a Fix c&p typo. 2008-10-16 17:54:23 +00:00
skrll
cf9f4754f3 p_smutex was replaced by p_lock. 2008-10-16 17:49:23 +00:00
skrll
79c7887582 Bring back cpu_setfunc.
cpu_lwp_fork should use cpu_setfunc, but not right now.
2008-10-16 17:42:26 +00:00
martin
ec4b77b48c resurrect cpu_setfunc(), adapted to new world order. 2008-10-16 17:08:33 +00:00
pooka
19b5350e77 call rump_netisr_init() 2008-10-16 16:41:07 +00:00
pooka
346ffecff3 ...... except that the compat converter is actually supposed to convert
the ioctl, not return random garbage.  It returning random garbage
causes an interface with an interesting netmask to get set and
hence a very interesting effect when you try to add a route for
your system.

All in all, a very healthy debugging session (if you're a vampire
or a wraith).
2008-10-16 16:40:39 +00:00
dholland
72c2627f1f Wrap declaration of a STATIC function that's only conditionally defined
in a suitable ifdef, so things still compile if STATIC is defined as
"static", which is for some reason not the default.
2008-10-16 15:36:23 +00:00
dholland
744c8edc4b Wrap declaration of a STATIC function that's only conditionally defined
in a suitable ifdef, so things still compile if STATIC is defined as
"static", which is for some reason not the default.

(In the long run STATIC should go away - it might have once been a
portability hack but now definitely serves no purpose.)
2008-10-16 15:31:05 +00:00
pooka
a60de16dcb ... except that compat_ifioctl() must know how to route the
commands further.
2008-10-16 15:02:10 +00:00
dholland
e54c6daca4 Remove unused global variables 2008-10-16 14:55:28 +00:00
pooka
61c2d7025c Add a few compat stubs. They shouldn't be required at all, but I
don't currently have the time to wage a holy war against how the
kernel decides it wants them.
2008-10-16 14:38:39 +00:00
christos
18c51ff05b Provide a way for a program to override the PIE flags. 2008-10-16 14:36:42 +00:00
dholland
0faa1734e3 Use "extern" properly for referencing globals defined in other modules.
Now builds cleanly with -warn-common.
2008-10-16 14:36:40 +00:00
christos
3b55965a05 Never build this with PIE. 2008-10-16 14:36:20 +00:00
hans
ce49696b30 Set nexaddr on qbus vaxen to enable remapping of buffers when booting
from MSCP devices. Fixes MSCP boot problem introduced by moving boot up
to allow for bigger kernels. OK by matt.
2008-10-16 13:39:25 +00:00
pooka
8447026c71 appease 64bit gcc 2008-10-16 13:36:06 +00:00
hans
991c2cc9b0 fix detection of unknown massbus devices, ok by matt 2008-10-16 12:47:22 +00:00
pooka
a162d50c30 regen 2008-10-16 10:32:28 +00:00
pooka
44bb67c4bb Be more verbose about the performance hit. 2008-10-16 10:30:17 +00:00
pooka
46b5f75de9 build librumpnet 2008-10-16 09:44:12 +00:00
pooka
11a1b3f96a add do-sys-rump-net-lib 2008-10-16 09:43:12 +00:00
pooka
f6e8419ce8 update set lists for:
* rump_nfs
* librumpfs_nfs
* librumpnet{,_net,_netinet,_sockin,_virtif}
2008-10-16 09:39:43 +00:00
pooka
d72ee403e1 Add & enable rump_nfs. 2008-10-16 09:30:57 +00:00
pooka
37b61acf1e * descend into rump/net
* descend into fs/lib/libnfs
2008-10-16 09:29:43 +00:00
pooka
ce2bb4bac6 Add a prototype to allow this to build (will be moved to a better
place later).
2008-10-16 09:25:30 +00:00
pooka
e66325797b kill default DBG=-g 2008-10-16 09:24:51 +00:00
pooka
61c5cf598d Convert mount_nfs to the mount_foo_parseargs() format. No functional
change.
2008-10-16 09:12:54 +00:00