aboutsummaryrefslogtreecommitdiff
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* Use _lapic+offset to access the local apic from assembly languageJake Burkholder2000-12-1410-60/+74
| | | | | | | | files, rather than the symbols in globals.s. The offsets are generated by genassym. Notes: svn path=/head/; revision=70006
* Fix this based on Mike's moved pci code. We needed to delete the pci_mWarner Losh2000-12-141-4/+2
| | | | | | | from this module anyway, so I just did that. Notes: svn path=/head/; revision=70002
* Fix include directories for crossbuilding.Marcel Moolenaar2000-12-131-1/+1
| | | | | | | | | | | | | | | | | aicasm is run on the build machine and therefore needs to be compiled and linked against the headers and libraries (resp) of the build machine. Since normally the default include directories are search after any specified on the command line, make sure we don't accidentally pick up machine dependent headers from the kernel compile directory by specifying /usr/include first. This solves the (cross) build problem for ia64. Approved by: gibbs Notes: svn path=/head/; revision=70000
* - Add a new flag MTX_QUIET that can be passed to the various mtx_*John Baldwin2000-12-134-126/+205
| | | | | | | | | | | | | functions. If this flag is set, then no KTR log messages are issued. This is useful for blocking excessive logging, such as with the internal mutex used by the witness code. - Use MTX_QUIET on all of the mtx_enter/exit operations on the internal mutex used by the witness code. - If we are in a panic, don't do witness checks in witness_enter(), witness_exit(), and witness_try_enter(), just return. Notes: svn path=/head/; revision=69998
* o Remove the COMPAT_OLDPCI option now that Mike removed it.Warner Losh2000-12-131-3/+3
| | | | | | | | | o Add pmtimer device o Shorten scsi settle time to 1 second, since that's what I use and I'm tired of remerging it every time. Notes: svn path=/head/; revision=69997
* Reconnect linprocfs.Dag-Erling Smørgrav2000-12-131-2/+2
| | | | Notes: svn path=/head/; revision=69996
* Use kinfo_proc instead of eproc (which Kirk deep-sixed earlier this week)Dag-Erling Smørgrav2000-12-132-216/+260
| | | | | | | | | | | | | Generate a version string that looks just like a real Linux one - almost :) Use sbufs everywhere instead of sprintf(). Note that this is still imperfect, as the code does not check whether the sbuf overflowed - but it'll still work better than before, since if the sbuf overflows, the code now simply copies out 0 bytes instead of causing a trap (or worse, corrupting kernel structures) Notes: svn path=/head/; revision=69995
* Add dependency on linux, which is needed for proc/version.Dag-Erling Smørgrav2000-12-131-0/+1
| | | | Notes: svn path=/head/; revision=69994
* Add subr_sbuf.c.Dag-Erling Smørgrav2000-12-131-0/+1
| | | | Notes: svn path=/head/; revision=69991
* String buffer APIDag-Erling Smørgrav2000-12-132-0/+347
| | | | Notes: svn path=/head/; revision=69990
* If we fail to emulate a vm86 trap in kernel mode, then we useJohn Baldwin2000-12-133-0/+3
| | | | | | | | | vm86_trap() to return to the calling program directly. vm86_trap() doesn't return, thus it was never returning to trap() to release Giant. Thus, release Giant before calling vm86_trap(). Notes: svn path=/head/; revision=69987
* Include vm/vm_zone.h prior to vm/swap_pager.h.Seigo Tanimura2000-12-131-0/+1
| | | | | | | | Noticed by: Michael Harnois <mdharnois@home.com> Submitted by: assar Notes: svn path=/head/; revision=69986
* Strip the .comment and .note sections when stripping. There's noRobert Nordier2000-12-131-1/+1
| | | | | | | point in retaining this info, particularly under BTX. Notes: svn path=/head/; revision=69985
* I really hate it when part of a patch gets left out.Julian Elischer2000-12-131-1/+0
| | | | | | | | This was still sitting in my commit tree. Luckily I always compare my before and after trees... Notes: svn path=/head/; revision=69982
* Move `#include <sys/devicestat.h>' into #ifdef/#endif to keepNoriaki Mitsunaga2000-12-131-1/+1
| | | | | | | comaptibility with NetBSD/pc98. Notes: svn path=/head/; revision=69979
* Do not race for the lock of an inode hash.Seigo Tanimura2000-12-132-12/+84
| | | | | | | Reviewed by: jhb Notes: svn path=/head/; revision=69974
* - If swap metadata does not fit into the KVM, reduce the number ofSeigo Tanimura2000-12-1311-27/+76
| | | | | | | | | | | | | | | | | | struct swblock entries by dividing the number of the entries by 2 until the swap metadata fits. - Reject swapon(2) upon failure of swap_zone allocation. This is just a temporary fix. Better solutions include: (suggested by: dillon) o reserving swap in SWAP_META_PAGES chunks, and o swapping the swblock structures themselves. Reviewed by: alfred, dillon Notes: svn path=/head/; revision=69972
* Introduce a new potientially cleaner interface for accessing per-cpuJake Burkholder2000-12-1322-275/+292
| | | | | | | | | | | | | | variables from i386 assembly language. The syntax is PCPU(member) where member is the capitalized name of the per-cpu variable, without the gd_ prefix. Example: movl %eax,PCPU(CURPROC). The capitalization is due to using the offsets generated by genassym rather than the symbols provided by linking with globals.o. asmacros.h is the wrong place for this but it seemed as good a place as any for now. The old implementation in asnames.h has not been removed because it is still used to de-mangle the symbols used by the C variables for the UP case. Notes: svn path=/head/; revision=69971
* Add route interrupt method.Matt Jacob2000-12-131-0/+2
| | | | Notes: svn path=/head/; revision=69970
* Lock the allproc list.Jake Burkholder2000-12-131-1/+4
| | | | | | | Approved by: DES Notes: svn path=/head/; revision=69969
* Preventing runaway kernel soft updates memory, take three.Kirk McKusick2000-12-134-73/+168
| | | | | | | | | | | | | | | | | | | | | | | | Previously, the syncer process was the only process in the system that could process the soft updates background work list. If enough other processes were adding requests to that list, it would eventually grow without bound. Because some of the work list requests require vnodes to be locked, it was not generally safe to let random processes process the work list while they already held vnodes locked. By adding a flag to the work list queue processing function to indicate whether the calling process could safely lock vnodes, it becomes possible to co-opt other processes into helping out with the work list. Now when the worklist gets too large, other processes can safely help out by picking off those work requests that can be handled without locking a vnode, leaving only the small number of requests requiring a vnode lock for the syncer process. With this change, it appears possible to keep even the nastiest workloads under control. Submitted by: Paul Saab <ps@yahoo-inc.com> Notes: svn path=/head/; revision=69967
* Sync with i386/GENERIC rev 1.294 removing "COMPAT_OLDPCI".David E. O'Brien2000-12-133-3/+0
| | | | | | | This fixed the broken kernel build on the Alpha. Notes: svn path=/head/; revision=69966
* Remove unnecessary includes found by phk's script. I've been buildingWarner Losh2000-12-134-5/+0
| | | | | | | these locally for ages. Notes: svn path=/head/; revision=69965
* Fix problem with ax88190 based cards trying to probe further afterWarner Losh2000-12-131-0/+1
| | | | | | | matching the ax88190. Notes: svn path=/head/; revision=69964
* Remove unnecessary includes found by phk's script a long time ago.Warner Losh2000-12-132-4/+0
| | | | Notes: svn path=/head/; revision=69963
* Add aic and ray modules. I've been building these for a while now onWarner Losh2000-12-131-1/+1
| | | | | | | i386. Notes: svn path=/head/; revision=69962
* Module for aicWarner Losh2000-12-131-0/+9
| | | | | | | Submitted by: Michael Reifenberger Notes: svn path=/head/; revision=69961
* Add module dependencies on CAM module.Warner Losh2000-12-133-0/+3
| | | | | | | Submitted by: Michael Reifenberger Notes: svn path=/head/; revision=69960
* Eliminate a race in MEXTFREE(). The reference counter decrement and testBosko Milekic2000-12-131-11/+16
| | | | | | | | | | | | | | | was not atomic. We now make sure that we free the ext buf if the reference count is about to reach 0 but also make sure that nobody else has done it before us. While I'm here, change refcnt to u_int (from long). This fixes a compiler warning regarding use of atomic_cmpset_long on i386. Submitted by: jasone Reviewed by: jlemon, jake Notes: svn path=/head/; revision=69959
* o Tighten restrictions on use of /proc/pid/ctl and move access checksRobert Watson2000-12-132-8/+20
| | | | | | | | | | in ctl to using centralized p_can() inter-process access control interface. Reviewed by: sef Notes: svn path=/head/; revision=69958
* Remove a redundant prototype.Mike Smith2000-12-131-1/+0
| | | | Notes: svn path=/head/; revision=69957
* Don't try to free the now-nonexistent hdrspec field. This one snuck byMike Smith2000-12-132-4/+0
| | | | | | | me in the previous round of patches. Oops. Notes: svn path=/head/; revision=69956
* Add isa support:Warner Losh2000-12-134-20/+18
| | | | | | | | o write isa driver routines. o factor detach routine in sn_detach. Notes: svn path=/head/; revision=69955
* Updates to match changes elsewhere in the PCI subsystem:Mike Smith2000-12-133-98/+34
| | | | | | | | | | | | - Remove redundant header-type-specific support in the cardbus pcibus clone. The bridges don't need this anymore. - Use pcib_get_bus instead of the deprecated pci_get_secondarybus. - Implement read/write ivar support for the pccbb, and teach it how to report its secondary bus number. Save the subsidiary bus number as well, although we don't use it yet. Notes: svn path=/head/; revision=69954
* Next round of PCI subsystem updates:Mike Smith2000-12-139-1033/+931
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Break out the /dev/pci driver into a separate file. - Kill the COMPAT_OLDPCI support. - Make the EISA bridge attach a bit more like the old code; explicitly check for the existence of eisa0/isa0 and only attach if they don't already exist. Only make one bus_generic_attach() pass over the bridge, once both busses are attached. Note that the stupid Intel bridge's class is entirely unpredictable. - Add prototypes and re-layout the core PCI modules in line with current coding standards (not a major whitespace change, just moving the module data to the top of the file). - Remove redundant type-2 bridge support from the core PCI code; the PCI-CardBus code does this itself internally. Remove the now entirely redundant header-class-specific support, as well as the secondary and subordinate bus number fields. These are bridge attributes now. - Add support for PCI Extended Capabilities. - Add support for PCI Power Management. The interface currently allows a driver to query and set the power state of a device. - Add helper functions to allow drivers to enable/disable busmastering and the decoding of I/O and memory ranges. - Use PCI_SLOTMAX and PCI_FUNCMAX rather than magic numbers in some places. - Make the PCI-PCI bridge code a little more paranoid about valid I/O and memory decodes. - Add some more PCI register definitions for the command and status registers. Correct another bogus definition for type-1 bridges. Notes: svn path=/head/; revision=69953
* Remove the COMPAT_OLDPCI option, it's going away.Mike Smith2000-12-134-6/+2
| | | | | | | Turn 'lnc' off in GENERIC for the moment, pending its update to newbus. Notes: svn path=/head/; revision=69952
* Remove a couple of leftover unused variables.Mike Smith2000-12-134-4/+0
| | | | Notes: svn path=/head/; revision=69951
* Use proper mutex locking when calling setrunnable from speedup_syncer().Kirk McKusick2000-12-132-6/+4
| | | | | | | Submitted by: Tor.Egge@fast.no Notes: svn path=/head/; revision=69950
* - Change the allproc_lock to use a macro, ALLPROC_LOCK(how), insteadJake Burkholder2000-12-1324-75/+99
| | | | | | | | | | | of explicit calls to lockmgr. Also provides macros for the flags pased to specify shared, exclusive or release which map to the lockmgr flags. This is so that the use of lockmgr can be easily replaced with optimized reader-writer locks. - Add some locking that I missed the first time. Notes: svn path=/head/; revision=69947
* Another mismatch found by Gcc:Julian Elischer2000-12-123-3/+0
| | | | | | | | This is what happenss when you let the patches pile up too long without committing them.. brain rot.. Notes: svn path=/head/; revision=69946
* Change initialiser to match new structure layout.Julian Elischer2000-12-121-1/+0
| | | | | | | | forgotten by: Me Found by: GCC Notes: svn path=/head/; revision=69945
* remove unused variableJulian Elischer2000-12-121-1/+0
| | | | Notes: svn path=/head/; revision=69943
* It's possible for an ISA bus to be hung off an EISA bridge, so we need toMike Smith2000-12-121-0/+1
| | | | | | | reflect that here. Notes: svn path=/head/; revision=69942
* Fix bug in parse type for struct ng_one2many_config.Archie Cobbs2000-12-121-2/+2
| | | | | | | Reported by: Yian Zhu <Yian.Zhu@qobra.com> Notes: svn path=/head/; revision=69938
* I always forget this file. It's netgraph, but not one of mine.....Julian Elischer2000-12-121-3/+4
| | | | Notes: svn path=/head/; revision=69937
* I have no idea at all why this file was not included in the last commit.Julian Elischer2000-12-121-1/+2
| | | | Notes: svn path=/head/; revision=69934
* Point #includes at compat/linprocfs instead of i386/linux/linprocfs.Dag-Erling Smørgrav2000-12-125-5/+5
| | | | Notes: svn path=/head/; revision=69933
* Remove after repo-copy to sys/compat/linprocfs.Dag-Erling Smørgrav2000-12-125-2290/+0
| | | | Notes: svn path=/head/; revision=69932
* The linprocfs sources have moved to sys/compat/linprocfs.Dag-Erling Smørgrav2000-12-121-1/+11
| | | | Notes: svn path=/head/; revision=69931
* only include sys/proc.h onceMatt Jacob2000-12-121-1/+0
| | | | Notes: svn path=/head/; revision=69930