Commit Graph

174370 Commits

Author SHA1 Message Date
christos 66d46cebd1 make .a archives PIC for MKPIE 2008-10-17 17:29:39 +00:00
christos 3bab625c77 add missing free. 2008-10-17 17:15:09 +00:00
apb 1f3d5128aa Document the HOST_xxx and TOOL_xxx variable naming convention. 2008-10-17 15:04:18 +00:00
christos 02934a6249 Requested by yamt:
- In getpages don't allocate if we are not locked
- Use kmem_alloc instead of malloc and don't sleep

Also provide a 64 entry stack array so we don't have to allocate in the
common case.
2008-10-17 14:24:43 +00:00
skrll 86bba1afff Typo in previous. 2008-10-17 12:35:12 +00:00
apb 4de4994446 Fix a bug in which which(1) would check only the first element of the
path for all args except the first.  So "which cp vi" found /bin/cp
using the first entry in the path, but failed to find /usr/bin/vi
using the second entry in the path, although "whereis cp vi" worked.
Restoring the ":" was done in the wrong place.

Also fix a bug in which an arg beginning with "/" would cause all
subsequent args to be ignored.  A "break" should have been "continue".
Add comments to all break and continue statements saying what they are
intended to do.

Also add braces around the body of a for loop which contained only one
multi-line statement.
2008-10-17 10:53:26 +00:00
cegger cbaaa673fc make this compile 2008-10-17 08:51:43 +00:00
cegger a3832d3178 build fix: <sys/savar.h> is needed to make dereferencing sadata_vp compile.
A fwd declaration is enough for defining a pointer, but you need the definition to access the structure
2008-10-17 08:20:48 +00:00
cegger 08b2b56823 add struct lwp fwd declaration make to this header standalone 2008-10-17 08:16:57 +00:00
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