summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* Check in some months long pending minor debug output changes.mjacob2003-06-021-26/+47
| | | | | | Clarify that the implicit fallthrough was *not* intentional (thanks, Poul!) and reorganize the code so a correct fallthrough (with /* FALLTHROUGH */) occurs.
* Use C99 compatable asm statements.obrien2003-06-022-4/+4
|
* Change kernel_object and kmem_object to (&kernel_object_store) andalc2003-06-012-8/+8
| | | | | (&kmem_object_store), respectively. This allows the address of these objects to be resolved at link-time rather than run-time.
* Improve set_mcontext:marcel2003-06-011-0/+5
| | | | | | o Don't copy psr verbatim from the user supplied context. Only allow userland to change the processor settings that are part of the user mask.
* Improve on cpu_set_upcall:marcel2003-06-011-13/+13
| | | | | | | | | | | | o Use pcb and tf for the new pcb and the new trapframe and use pcb0 for the old (current) pcb. The mix of pcb, pcb2 and tf was slightly confusing. o Don't define td->td_frame here. It has already been set previously by cpu_thread_setup. Add a KASSERT to make sure pcb and tf are both non-NULL. o Make sure the number of dirty registers is 0 for the new thread. There are no user registers on the backing store because we heven't enter userland yet.
* A new API function PacketAliasRedirectDynamic() can be usedru2003-06-013-1/+36
| | | | | to mark a fully specified static link as dynamic; i.e. make it a one-time link.
* Make the PacketAliasSetAddress() function call optional. If itru2003-06-012-11/+18
| | | | | | is not called, and no static rules match an outgoing packet, the latter retains its source IP address. This is in support of the "static NAT only" mode.
* Change a :mux2003-06-012-2/+2
| | | | | | | | | | | bzero(ptr, sizeof(DC_RXLEN * 5)); which should obviously be: bzero(ptr, DC_RXLEN * 5); Looks like this bug may have reduced the effectiveness of the workaround for the hardware bug in the PNIC chips. MFC after: 1 week
* Be sloppier about the miidevs.h dependency. This reduces the maintenanceobrien2003-06-011-7/+1
| | | | | | effort at the expense of making miidevs.h a dependency for very .o. Requested by: imp
* Accpet '1'..'5' in place of F1..F5 for serial console users.obrien2003-06-011-3/+5
| | | | Reviewed by: Bruce M Simpson <bms@spc.org>
* Shorten long comment.obrien2003-06-011-1/+1
|
* Sync with i386/GENERIC ordering.obrien2003-06-011-18/+20
|
* - Style(9) fixes, most notably :mux2003-06-012-1070/+730
| | | | | | | | | | | | | o Remove register keyword o ANSIfy prototypes o Remove "return;" at the end of void functions o Remove trailing spaces o Don't align local variables with tabs and reorder them o Don't use /* FOO */ at the end of a #ifdef FOO block if it's a small block - Other non-functional changes : o 6 -> ETHER_ADDR_LEN o Don't initialize if_output; ether_ifattach() does it for us
* Restore parentheses removed inappropriately in last commit.mjacob2003-06-011-2/+3
|
* Simplify the GEOM OAM api: Drop the request type, and let everythingphk2003-06-017-432/+289
| | | | | | | | hinge on the "verb" parameter which the class gets to interpret as it sees fit. Move the entire request into the kernel and move changed parameters back when done.
* constify g_sanity()phk2003-06-012-2/+2
|
* Add (but do not connect) a half-finished driver for Aureal Vortex cards.des2003-06-013-0/+820
| | | | The mixer works, pcm support is half done.
* Remove break after return.phk2003-06-011-1/+1
| | | | | | Add XXX comment where intent is unclear. Found by: FlexeLint
* Remove #include <sys/disklabel.h>phk2003-06-012-2/+0
|
* Don't leak "barlist" allocation on failure.phk2003-06-011-0/+4
| | | | Found by: FlexeLint
* Remove unused variables.phk2003-06-011-15/+3
| | | | Found by: FlexeLint
* Use bcmp() to compare hash strings.phk2003-06-011-1/+1
|
* Don't unlock the parent directory vnode twice if the ISDOTDOT flagtruckman2003-06-011-1/+2
| | | | is set.
* Remove unused variables.phk2003-06-011-11/+1
| | | | | | | Remove break after return. Add XXX comment where intent is unclear. Found by: FlexeLint
* Make "where" an alias for "trace"phk2003-06-011-0/+1
|
* Add /* FALLTHROUGH */phk2003-06-011-0/+4
| | | | Found by: FlexeLint
* Implement cpu_thread_setup(). This is mostly the same as on i386,marcel2003-06-011-0/+8
| | | | | | | except for the fact that trapframes have a size recorded in it that we set here too. We need this for proper thread setup. Pointed out by: mtm
* Fix up locking problems in fifo_open() and fifo_close():truckman2003-06-011-25/+73
| | | | | | | | | | | | | | | | | | | | | Sleep on the vnode interlock while waiting for another caller to increment fi_readers or fi_writers. Hold the vnode interlock while incrementing fi_readers or fi_writers to prevent a wakeup from being missed. Only access fi_readers and fi_writers while holding the vnode lock. Previously fifo_close() decremented their values without holding a lock. Move resource deallocation from fifo_close() to fifo_inactive(), which allows the VOP_CLOSE() call in the error return path in fifo_open() to be removed. Fifo_open() was calling VOP_CLOSE() with the vnode lock held, in violation the current vnode locking API. Also the way fifo_close() used vrefcnt() to decide whether to deallocate resources was bogus according to comments in the vrefcnt() implementation. Reviewed by: bde
* Remove the ia64 hackery in threadinit() that was needed to work aroundmarcel2003-06-012-28/+0
| | | | | | | the lameness of the kstack code. The EPC overhaul de-lame-ified the kstack code by removing the need for contigmalloc(). We can now allocate stacks using malloc(). We probably want to make the stacks swappable as well so that we can make it MI. But that's another story.
* MFi386: revision 1.199nyan2003-06-013-3/+3
|
* Merged from sys/isa/ppc.c revision 1.40.nyan2003-06-012-14/+0
|
* Merged from sys/isa/fd.c revision 1.250.nyan2003-06-012-4/+0
|
* Merged from sys/dev/sio/sio.c revision 1.399.nyan2003-06-012-4/+0
|
* Use SC_NO_CUTPASTE to protect cutpaste variables correctly, fixing thejmallett2003-06-011-2/+4
| | | | | | | -Werror build with such option, but not other combinations. LINT misses this because syscons knobs in LINT turn off a lot of code. Reviewed by: marcel (some time ago)
* Return EOPNOTSUPP for attempted EA operations on VCHR vnodes in UFS2;rwatson2003-06-011-0/+14
| | | | | | | | | | | | | | if we permit them to occur, the kernel panics due to our performing EA operations using VOP_STRATEGY on the vnode. This went unnoticed previously because there are very for users of device nodes on UFS2 due to the introduction of devfs. However, this can come up with the Linux compat directories and its hard-coded dev nodes (which will need to go away as we move away from hard-coded device numbers). This can come up if you use EA-intensive features such as ACLs and MAC. The proper fix is pretty complicated, but this band-aid would be an excellent MFC candidate for the release.
* Attempt to further comment and clarify System V IPC logic: documentrwatson2003-05-311-9/+24
| | | | | | | | | | | why certain exceptions are made, note an inconsistency between FreeBSD and some other implementations regarding IPC_M, and let suser() generate our EPERM rather than forcing it ourselves. Remove a carriage return that crept in in the last commit. Reviewed by: gordon Obtained from: TrustedBSD Project Sponsored by: DARPA, Network Associates Laboratories
* Attempt to marginally de-obfuscate sections of the System V IPC accessrwatson2003-05-311-2/+7
| | | | | | | control logic. Obtained from: TrustedBSD Project Sponsored by: DARPA, Network Associates Laboratories
* MFi386: rev 1.56: remove break after returnpeter2003-05-311-2/+2
|
* MFi386: rev 1.23: use gdb_strlen()/gdb_strcpy() directly.peter2003-05-311-14/+11
|
* MFi386: rev 1.50: remove unused variablepeter2003-05-311-3/+0
|
* Now that we have the signal trampolines in the gateway page and themarcel2003-05-311-1/+7
| | | | | | | | | | | | gateway page is considered kernel space, we can panic when we should only SIGSEGV. Hence, add the additional constraint that for page faults we also require running with kernel privileges. The gateway page is the only kernel code running with user privileges, iso this is a correct way to exclude the gateway page from kernel land. We do not currently exclude the gateway page for other faults as it is not always the right way to do it. Further tuning will happen on a case by case bases.
* If DESTDIR was specified as a makeoption in the kernelconfig filephk2003-05-311-0/+5
| | | | | we want to pass it on to the modules build so we don't install the kernel under DESTDIR and the modules in /boot.
* Implement cpu_set_upcall(). Required by libthr and used bymarcel2003-05-311-0/+22
| | | | | | | | thr_create(2). This implementation is so far only compile tested. But since this is also the last of the functions required to support libthr, we're now functionally complete (for some weird definition of functionally; and complete). Runtime testing can commence.
* wrap macro in do {...} while(0)phk2003-05-312-4/+4
|
* Add "" around mutex name to make message less confusing.phk2003-05-312-2/+2
|
* Add an XXX comment with a TODO item for next time we run a revisionphk2003-05-311-0/+5
| | | | on this API.
* Implement set_mcontext() and get_mcontext(). Just as for sendsig() andmarcel2003-05-311-4/+14
| | | | | | | | sigreturn(), we cheat and assume the preserved registers are still on-chip and unmodified. This is actually the case, but more by accident than by design. We need to use unwinding eventually or explicitly compile the kernel in a way that the compiler steers clear from using the preserved registers completely.
* Make the regset pointers const pointers for the context restore functions.marcel2003-05-311-3/+3
| | | | This works better with set_mcontext() and is more precise in general.
* Some ia32 related finetuning for the EPC syscall path:marcel2003-05-312-50/+64
| | | | | | | | | | | | | | | | | o The SDM states that flushing the RSE in the cycle prior to the call to ia32 code yields the best performance. We don't really care to much about performance here, but we do the same anyway. I'm being paranoia and conservative here. o Only initialize the ia32 state registers, not the registers used as scratch by the ia32 engine. This saves a couple of loads from the trapframe, but also helps debugging: we don't clobber useful debugging data (engineering hints :-) o Make sure all general registers constituting ia32 state have been initialized. If there's no useful to be loaded from the trapframe, clear the register. This avoids accidentally leaking NaT bits. o Make sure we set ar.k6 prior to clobbering ar.bspstore and also set ar.k7 prior to setting sp. This fixes a race seen for ia64 native code as well (and previously fixed too).
* Add /* FALLTHROUGH */phk2003-05-313-9/+7
| | | | | | | Move /* FALLTHROUGH */ to correct location. Remove unused variable(s). Found by: FlexeLint
OpenPOWER on IntegriCloud