summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* Drop a memory-corruption debugging test-tool.phk2003-06-072-17/+0
|
* Add missing va_end() calls.phk2003-06-075-7/+15
| | | | Noticed by: tmm
* Sanitize the LABELSECTOR & LABELOFFSET definitions:phk2003-06-071-19/+1
| | | | | Remove sparc64 definitions. Remove fallback definitions.
* MFi386: revisions 1.13 and 1.14.nyan2003-06-071-5/+15
|
* MFi386: revision 1.30.nyan2003-06-071-2/+5
|
* Fixed compile error.nyan2003-06-072-4/+4
|
* Don't use a C compiler to assemble a pure asm file.obrien2003-06-071-1/+7
|
* Gah! Set LABELSECTOR and LABELOFFSET correctly for amd64. This mightpeter2003-06-071-1/+1
| | | | explain why I've been having trouble with libdisk and sysinstall...
* pmap_find_vhpt() has been observed to return a NULL pointer whenmarcel2003-06-071-10/+11
| | | | | | | the caller assumes this to not happen by means of performing an indirection without checking the return value. Add KASSERTs to force a kernel with INVARIANTS to panic. This is a short-term measure. The pmap code is scheduled to be overhauled.
* If we get a fault in the gateway page, which would happen if we trymarcel2003-06-071-2/+5
| | | | | | | | | | to deliver a signal and the RSE backing store has been exhausted or the backing store pointer has been clobbered, we need to make sure we call userret() and do_ast() when we exit from trap(). Not adjusting the local variable 'user' in this case will prevent the faulty process from being terminated and we end up in an infinite fault repetition. Faulty process provided by: bento
* Pass the vm object to vm_object_collapse() with its lock held.alc2003-06-072-10/+7
|
* When single stepping, only leave ENBUSFREE enabledgibbs2003-06-062-4/+4
| | | | | | | | if it was already enabled. We don't want to set it when it shouldn't be set, we just don't want to inadvertantly turn it off. This should fix a recent report of the aic7xxx driver repeatedly complaining of "unexpected busfree while idle" in one configuration.
* Clear stale PCI errors during our test forgibbs2003-06-062-8/+27
| | | | | | | successfully mapping our registers. This avoids the disabling of memory mapped I/O just because some other driver probe happened to touch our registers.
* Work around SCSI spec violation by the Quantum Atlas 10K.gibbs2003-06-062-36/+70
| | | | | | | | | | | | | | | | | | | This drive delays going async after receiving a WDTR message. We now send an SDTR message after a WDTR even if our goal is to go async. This should work even for confused devices. If we get an unexpected busfree when attempting a WDTR or SDTR, only set the goal negotiation parameters we were trying to negotiate to off. This means that should a WDTR message fail, we will still try an SDTR if our goal is non-async. Fix a few more places where we were looking at goal.period instead of goal.offset for determining if we should be negotiating sync. This should not have any impact on our behavior, but the offset is more definitive and should be used.
* aic7770.c:gibbs2003-06-067-155/+58
| | | | | | | | | | | | | | | | | | | | | | | | | aic79xx.c: aic79xx.h: aic79xx_pci.c: aic7xxx.c: aic7xxx.h: aic7xxx_pci.c: Switch ah?_reset() to take an additional "reinit" argument. Use this instead of init_level to determin if the chip should be fully reinitialized after a chip reset. This is required so that ah?_shutdown() can reset the chip without side-effects. aic79xx.c: Implement ahd_suspend() and ahd_resume(). aic7xxx.c: Change ahc_loadseq() to *not* restart the sequencer. This brings the loadseq behavior in line with that of the 7902 driver and also simplifies the init routine. Correct the resume routine to enable interrupts and restart the sequencer.
* Use TRAPF_USERMODE() to replace an equivalent check in trap(). Whilemarcel2003-06-061-3/+2
| | | | here, amend the related comment.
* Add probe entry for the 284X with BIOS disabled.gibbs2003-06-061-3/+8
|
* Constify a string used in our EISA probe tables.gibbs2003-06-061-4/+4
| | | | Fix a few style nits.
* Have TRAPF_USERMODE() take into account that the gateway page is notmarcel2003-06-061-2/+8
| | | | | | always kernel space. It should be treated as user space when run with user privileges (which is the case for the signal trampolines). This fixes its only use in a KASSERT in subr_trap.c.
* Attempt to crunch down the thread state info so that it is more likely tojulian2003-06-061-6/+15
| | | | | | | | | | | | fit on one line. Account for threads better. * No need to report that it is on a sleep queue if it is actually sleeping * "Normal" state is almost ubiquitous.. only report abnormal states. * increment the #lines count for each separate thread shown in threaded programs. makes it less likely that a threaded program will make all the data on a screen overflow off the top of the screen.
* When setting fragment queue pointers to NULL, or comparing them withrwatson2003-06-061-3/+3
| | | | NULL, use NULL rather than 0 to improve readability.
* - Rename nexus_pcib to legacy_pcib. I've been meaning to do this for ajhb2003-06-062-56/+61
| | | | | | | | | | | | | while after the legacy device was added since this driver hangs from legacy and not nexus. - Make several methods non-static so they can be reused in a mptable host -> pci bridge driver that will be added at a later date. - Let legacy_pcib() use pcibios_pcib_route_interrupt() directly instead of wrapping it in a private function. Originally, I thought I was going to have the nexus_pcib() driver make a runtime APIC vs. 8259A check and call the appropriate routing method (MPTable vs. PIR) that way, but it ended up being cleaner to make nexus_pcib() just work with PIR and have a separate host -> pci bridge driver for the mptable/apic case.
* - Use IDTVEC() to declare IPI handlers since they are also IDT vectors.jhb2003-06-063-60/+42
| | | | - Make handlers for IPI's used by SMP kernels #ifdef SMP.
* Use the secondary bus number instead of the number of the bus the PCI-PCIjhb2003-06-061-1/+5
| | | | | | bridge lives on (i.e., the parent bus) when probing the PIR table for a bus. This could cause the PCIBIOS PCI-PCI bridge driver to bogusly attach to bridges that weren't in the PIR but whose parent bus was in the PIR.
* - Document the thermal and performance counter LVT entries in the localjhb2003-06-063-9/+15
| | | | | | APIC. - Add a lvt_thermal member to the LAPIC struct. - Add constants for the SMI and INIT LVT delivery modes.
* Handle the TDS_INACTIVE state by printing '[INACTIVE]' instead ofjhb2003-06-061-1/+4
| | | | | panic'ing. Also, for unknown thread states, print out the value rather than panic. Panic'ing in the debugger is pointless at best.
* Whitespace nits.jhb2003-06-061-2/+3
|
* Tweak make values and targets not to build kgzldr.o atkuriyama2003-06-061-4/+8
| | | | | | installation stage. Reviewed by: bde
* Correct the man section number in references to kldstat(8).yar2003-06-061-2/+2
|
* Add macros for kernel debugging. These have been around for agrog2003-06-064-0/+1104
| | | | | | | while, and they will need some more tuning before they're really useful, but at the moment they're better than nothing. Indirectly reminded by: dwhite
* Add two of three workarounds for interrupt storms for o2micro parts asimp2003-06-063-14/+152
| | | | | | | | | obtained from o2micro. These should only be needed for 'older' o2micro bridges (anything before the 7xxx series of bridges), but will work with the new bridges. # I don't plan on porting it to oldcard, but will happily commit to # oldcard if someone else needs them.
* thread_signal_add now is called with ps_mtx held, unlock it beforedavidxu2003-06-062-6/+10
| | | | calling copyin.
* Fix NFS file swapping, I broke it 3 months ago it seems.phk2003-06-051-6/+6
|
* - Extend the scope of the backing object's lock in vm_object_collapse().alc2003-06-051-2/+4
|
* Add support for Quad port adapterpdeuskar2003-06-055-374/+488
| | | | | | | | Add sysctl's to display statistics/debug_info Set WAIT_FOR_AUTONEG_DEFAULT to zero by default Increment packet in/out statistics inline instead of every two seconds. MFC after: 3 days
* Protect read-modify-write increment of f_count field with file lock.hsu2003-06-051-1/+1
|
* Implement ffs_listextattr() by breaking out that logic and special-casedrwatson2003-06-051-32/+88
| | | | | | | | | | | attribute name of "" from ffs_getextattr(). Invoking VOP_GETETATTR() with an empty name is now no longer supported; user application compatibility is provided by a system call level compatibility wrapper. We make sure to explicitly reject attempts to set an EA with the name "". Obtained from: TrustedBSD Project Sponsored by: DARPA, Network Associates Laboratories
* If a system call comes in requesting to retrieve an attribute namedrwatson2003-06-052-2/+26
| | | | | | | | | | | | "", temporarily map it to a call to extattr_list_vp() to provide compatibility for older applications using the "" API to retrieve EA lists. Use VOP_LISTEXTATTR() to support extattr_list_vp() rather than VOP_GETEXTATTR(..., "", ...). Obtained from: TrustedBSD Project Sponsored by: DARPA, Network Asssociates Laboratories
* Add vop_listextattr(), similar to vop_getextattr() but without arwatson2003-06-051-0/+12
| | | | | | | | | specific attribute name. It will have the same semantics as the older vop_getextattr() "retrieve the names" hack, returning a buffer with ASCII nul-seperated names. Obtained from: TrustedBSD Project Sponsored by: DARPA, Network Associates Laboratories
* Don't special-case handling of the empty string in the UFS1rwatson2003-06-051-4/+1
| | | | | | | | | extended attribute retrieval code: it's no longer special-cased, and is caught by the normal UFS1 EA validity checks (and, in fact, returns the same error, EINVAL). Obtained from: TrustedBSD Project Sponsored by: DARPA, Network Associates Laboratories
* fix typo (how did this get committed?)sam2003-06-041-1/+1
|
* Change the second (and last) argument of cpu_set_upcall(). Previouslymarcel2003-06-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | we were passing in a void* representing the PCB of the parent thread. Now we pass a pointer to the parent thread itself. The prime reason for this change is to allow cpu_set_upcall() to copy (parts of) the trapframe instead of having it done in MI code in each caller of cpu_set_upcall(). Copying the trapframe cannot always be done with a simply bcopy() or may not always be optimal that way. On ia64 specifically the trapframe contains information that is specific to an entry into the kernel and can only be used by the corresponding exit from the kernel. A trapframe copied verbatim from another frame is in most cases useless without some additional normalization. Note that this change removes the assignment to td->td_frame in some implementations of cpu_set_upcall(). The assignment is redundant. A previous call to cpu_thread_setup() already did the exact same assignment. An added benefit of removing the redundant assignment is that we can now change td_pcb without nasty side-effects. This change officially marks the ability on ia64 for 1:1 threading. Not tested on: amd64, powerpc Compile & boot tested on: alpha, sparc64 Functionally tested on: i386, ia64
* Fix the dreaded double counting that was present on alpha as well andmarcel2003-06-041-17/+21
| | | | | | | | | | | | | | | | got fixed two weeks after the ia64 version was copied from the alpha version (see rev 1.32 of sys/alpha/alpha/mem.c). As such, we were missing the same continue as on alpha. While here, add a default case for the device minor switch and do some general style(9) cleanups. WARNING: this file still has bugs. When reading from region 6 or region 7, we don't validate the physical address. One can trivially cause a machine check by trying to read from address 0xFFFFFFFFFFFFFFF0 or something that uses the unimplemented physical address bits. Reported by: Alan Robinson <alan.robinson@fujitsu-siemens.com>
* Change the second (and last) argument of cpu_set_upcall(). Previouslymarcel2003-06-0410-22/+21
| | | | | | | | | | | | | | | | | | | | | | | | | we were passing in a void* representing the PCB of the parent thread. Now we pass a pointer to the parent thread itself. The prime reason for this change is to allow cpu_set_upcall() to copy (parts of) the trapframe instead of having it done in MI code in each caller of cpu_set_upcall(). Copying the trapframe cannot always be done with a simply bcopy() or may not always be optimal that way. On ia64 specifically the trapframe contains information that is specific to an entry into the kernel and can only be used by the corresponding exit from the kernel. A trapframe copied verbatim from another frame is in most cases useless without some additional normalization. Note that this change removes the assignment to td->td_frame in some implementations of cpu_set_upcall(). The assignment is redundant. A previous call to cpu_thread_setup() already did the exact same assignment. An added benefit of removing the redundant assignment is that we can now change td_pcb without nasty side-effects. This change officially marks the ability on ia64 for 1:1 threading. Not tested on: amd64, powerpc Compile & boot tested on: alpha, sparc64 Functionally tested on: i386, ia64
* Batton down the hatches!!!jhb2003-06-041-1/+1
| | | | | | | | Always route PCI interrupts on i386 UP machines. I was planning to enable this for i386 anyways once SMP support is done. Having this enabled fixes problems on many people's laptops. Requested by: imp
* - Add further vm object locking to vm_object_deallocate(), specifically,alc2003-06-041-2/+12
| | | | for accessing a vm object's shadows.
* - Add VM_OBJECT_TRYLOCK().alc2003-06-041-0/+1
|
* Introduce g_provider_by_name() function, and use it.phk2003-06-043-10/+21
|
* Make this a true GEOM class:phk2003-06-041-751/+294
| | | | | | | | | | | | | Attach to the component devices using GEOM semantics. Create a GEOM provider instead of using disk_create() Use the GEOM OAM api for configuration. I saw approx ~1% speedup in througput and ~7% in latency in a simple minded test of a two-disk striped device. This file was repo-copied from src/sys/dev/ccd/ccd.c. This is not yet linked into the build.
* detach RNG test facility on device detachsam2003-06-041-0/+4
|
OpenPOWER on IntegriCloud