summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* Remove #define APIC_INTR_HIGHPRI_CLOCK - this is no longer usedpeter2002-07-081-7/+0
| | | | (see i386/isa/intr_machdep.c 1.72)
* The clock is already allocated as 'fast' - no need to try and intercept apeter2002-07-084-32/+0
| | | | 'slow' interrupt registration and convert it into 'fast'.
* Cosmetic. Remove #if 0 definition of vtophys() - it predates 4MB pages.peter2002-07-082-16/+0
| | | | Remove avtophys(), it isn't referenced anywhere.
* Add a special page zero entry point intended to be called via the singlepeter2002-07-0810-11/+162
| | | | | | | | | | | | | | | threaded VM pagezero kthread outside of Giant. For some platforms, this is really easy since it can just use the direct mapped region. For others, IPI sending is involved or there are other issues, so grab Giant when needed. We still have preemption issues to deal with, but Alan Cox has an interesting suggestion on how to minimize the problem on x86. Use Luigi's hack for preserving the (lack of) priority. Turn the idle zeroing back on since it can now actually do something useful outside of Giant in many cases.
* Document TCBHASHSIZE in NOTES and add it to the allowable kernel options.mp2002-07-082-0/+7
| | | | | | PR: 32912 Submitted by: Carl Schmidt <carl@slackerbsd.org> MFC after: 3 days
* - VT_PSEUDOFS and VT_PROCFS support locking nowjeff2002-07-081-3/+4
| | | | - Remove VBLK from the list of vtypes that are ignored for locking ops.
* s/procrunnable/kserunnable/ in a commentpeter2002-07-084-4/+4
|
* Lock down pseudofs:jeff2002-07-082-0/+29
| | | | | | | - Initialize lock structure in vncache_alloc - Return locked vnodes from vncache_alloc - Setup vnode op vectors to use default lock, unlock, and islocked - Implement simple locking scheme required for lookup
* Remove OBE prototype for procrunnable()peter2002-07-081-1/+0
|
* Avoid vm_page_lookup() [grabs a spinlock] and just process the upagepeter2002-07-081-14/+9
| | | | | | object memq instead. Suggested by: alc
* Fix a hideous TLB bug. pmap_unmapdev neglected to remove the devicepeter2002-07-082-8/+46
| | | | | | mappings from the page tables, which were mapped with PG_G! We could reuse the page table entry for another mapping (pmap_mapdev) but it would never have cleared any remaining PG_G TLB entries.
* Enable netboot support by default, since it can now coexist with disk andjake2002-07-071-3/+3
| | | | cdrom support. This avoids having to distribute separate loaders.
* Collect all the (now equivalent) pmap_new_proc/pmap_dispose_proc/peter2002-07-0714-1022/+277
| | | | | | | | | | | | | pmap_swapin_proc/pmap_swapout_proc functions from the MD pmap code and use a single equivalent MI version. There are other cleanups needed still. While here, use the UMA zone hooks to keep a cache of preinitialized proc structures handy, just like the thread system does. This eliminates one dependency on 'struct proc' being persistent even after being freed. There are some comments about things that can be factored out into ctor/dtor functions if it is worth it. For now they are mostly just doing statistics to get a feel of how it is working.
* Update for post-kse3 pmap kthread allocation changespeter2002-07-073-45/+27
|
* Fix (s/proc/thread/) some typos in two panic messages.peter2002-07-071-2/+2
|
* Remove 0 initializers for global/static variables, so they end up inluigi2002-07-071-4/+4
| | | | | BSS instead of DATA. This marginally reduces the kernel image size, though the difference is almost irrelevant for compressed kernels.
* - Require locks for getattr. At some point this could only require sharedjeff2002-07-071-3/+1
| | | | locks.
* - Delay unlocking a vnode in linker_hints_lookup until we're actually donejeff2002-07-071-5/+4
| | | | | with it. - Remove a now stale comment about improper vnode locking.
* Make this compile on 64 bit platformspeter2002-07-072-8/+8
|
* Change help documentation for bootfile and module_path to reflectmp2002-07-071-6/+8
| | | | | | | | the actual code. Both use a ";" (not a ",") to delimit entries. PR: 39679 Submitted by: Cyrille Lefevre <cyrille.lefevre@laposte.net> MFC after: 3 days
* o Lock accesses to the free queue(s) in vm_page_zero_idle().alc2002-07-071-0/+4
|
* Make NEWCARD the default pccard/cardbus system.imp2002-07-072-4/+10
|
* Make building with ficl work. Unfortunately booting with it doesn't.jake2002-07-072-5/+10
|
* Build ficl on sparc64 fwiw. It doesn't work.jake2002-07-071-2/+0
|
* One #include <sys/lock.h> is enough.mux2002-07-072-2/+0
| | | | Submitted by: Olivier Houchard <cognet@ci0.org>
* - Use 'options DEBUG_VFS_LOCKS' instead of the DEBUG_ALL_VFS_LOCKSjeff2002-07-071-5/+7
| | | | environment variable to enable the lock verifiction code.
* - Don't hold the vn lock while calling VOP_CLOSE in vclean().jeff2002-07-071-6/+10
|
* o Traverse the object's memq rather than repeatedly calling vm_page_lookup()alc2002-07-071-5/+2
| | | | in vm_object_split().
* - BUF_REFCNT() seems to be the preferred method for verifying a locked buf.jeff2002-07-071-3/+9
| | | | | | Tell vop_strategy_pre() to use this instead. - Ignore B_CLUSTER bufs. Their components are locked but they don't really exist so they don't have to be. This isn't ideal but it is safe.
* Add two asserts that prove & document getblk and geteblk's behavior ofjeff2002-07-071-0/+2
| | | | returning locked bufs.
* - Hold a lock on the vnode acquired from the file table across the call tojeff2002-07-061-3/+14
| | | | | | vm_mmap() as well as the GETATTR etc. - If the handle is a vnode in vm_mmap() assert that it is locked. - Wiggle Giant around a little to account for the extra vnode operation.
* Fix a mistake in my last commit. Don't grab an extra reference to the objectjeff2002-07-062-4/+1
| | | | in bp->b_object.
* Cleanup after my de-__P (remove leading whitespace before prototype args).alfred2002-07-061-72/+101
| | | | | | Add newlines after function return types in function declarations. Approved by: wpaul (a long time ago)
* Cleanup after my de-__P (remove leading whitespace before prototype args).alfred2002-07-061-84/+120
| | | | | | Add newlines after function return types in function declarations. Approved by: wpaul (a long time ago)
* Fix wrong use of ACPI_NO_UNIT_LIMIT which is for as_maxunits, not as_units.iwasaki2002-07-061-2/+2
|
* Fixup uses of GETVOBJECT.jeff2002-07-063-15/+17
| | | | | | | | | | | - Cache a pointer to the vnode's object in the buf. - Hold a reference to that object in addition to the vnode's reference just to be consistent. - Cleanup code that got the object indirectly through the vp and VOP calls. This fixes at least one case where we were calling GETVOBJECT without a lock. It also avoids an expensive layered call at the cost of another pointer in struct buf.
* make this repect ps_sigintr if there is a pre-existing signaljulian2002-07-061-1/+0
| | | | | | or suspension request. Submitted by: David Xu
* Clean up execve locking:jeff2002-07-064-5/+23
| | | | | | - Grab the vnode object early in exec when we still have the vnode lock. - Cache the object in the image_params. - Make use of the cached object in imgact_*.c
* - Disable original vop_strategy lock specification.jeff2002-07-061-1/+2
| | | | | | | | - Switch to the new vop_strategy_pre for lock validation. VOP_STRATEGY requires only that the buf is locked UNLESS the block numbers need to be translated. There may be other reasons, but as long as the underlying layer uses a VOP to perform the operations they will be caught later.
* - Add vop_strategy_pre to validate VOP_STRATEGY locking.jeff2002-07-062-0/+17
| | | | | | | | | - Disable original vop_strategy lock specification. - Switch to the new vop_strategy_pre for lock validation. VOP_STRATEGY requires only that the buf is locked UNLESS the block numbers need to be translated. There may be other reasons, but as long as the underlying layer uses a VOP to perform the operations they will be caught later.
* Use the new #! directive for vop_rename. Leave the old lock specificationjeff2002-07-061-4/+5
| | | | intact but disabled.
* Add "vop_rename_pre" to do pre rename lock verification. This is enabled onlyjeff2002-07-062-1/+22
| | | | with DEBUG_VFS_LOCKS.
* Add a new configuration directive that inserts calls to debugging functionsjeff2002-07-061-1/+28
| | | | | | | | | | | | | | | | in the VOP inlines. This is intended to replace the simple locking specifications for calls that have more complicated behavior such as rename and lookup. The syntax of the new entries is: #! name pre/post function If the function is marked 'pre' it is executed prior to calling the VOP and takes a pointer to a struct vop_{name}_args as it's only parameter. If the function is marked 'post' it is executed after the VOP call and takes a pointer to a struct vop_{name}_args as it's first parameter and the integer return value from the vop as the second paramter.
* Make space for compilations.obrien2002-07-061-0/+1
|
* Fix at least one of the things wrong with signalsjulian2002-07-061-6/+9
| | | | | | ^Z should work a lot better now. Submitted by: peter@freebsd.org
* Remove the advertising clause from the Duke BSD copyright on thegallatin2002-07-063-12/+3
| | | | | | | zero-copy files Requested by: rwatson Approved by: Jeff Chase (my old boss at Duke)
* Remove bogus vm_page_wakeup() in vm_page_cowfault() that will cause panicsgallatin2002-07-051-1/+0
| | | | | | | in the zero-copy send path if a process attempts to write to a page which is still in flight. reviewed by: ken
* Implement the last 2-3 missing instructions for ipfw,luigi2002-07-052-36/+111
| | | | | | | | | | | | | | | | now it should support all the instructions of the old ipfw. Fix some bugs in the user interface, /sbin/ipfw. Please check this code against your rulesets, so i can fix the remaining bugs (if any, i think they will be mostly in /sbin/ipfw). Once we have done a bit of testing, this code is ready to be MFC'ed, together with a bunch of other changes (glue to ipfw, and also the removal of some global variables) which have been in -current for a couple of weeks now. MFC after: 7 days
* Fix a lock order reversal in uma_zdestroy. The uma_mtx needs to be held acrossjeff2002-07-051-4/+4
| | | | | | calls to zone_drain(). Noticed by: scottl
* dd %i as an alias for %d for greater compatibility with our *BSD bretherenimp2002-07-051-0/+1
| | | | | Obtained from: NetBSD Reviewed by: jake, rwatson, bosko
OpenPOWER on IntegriCloud