summaryrefslogtreecommitdiffstats
path: root/sys
Commit message (Collapse)AuthorAgeFilesLines
* Modify the alq(9) alq_open() API to accept a file creation mode, ratherrwatson2005-04-164-8/+13
| | | | | | | | | than defaulting the cmode argument to vn_open() to 0. Supply a default argument of ALQ_DEFAULT_CMODE (0600) in current callers. Discussed with/pointed out by: hmp Reveiwed by: jeff, hmp MFC after: 3 days
* - Plug memory leak.pjd2005-04-161-3/+10
| | | | | | | | - Fix two style nits. Found by: Coverity Prevent analysis tool Reviewed by: rwatson MFC after: 1 week
* Return better "error" values for UWX_BOTTOM and UWX_ABI_FRAME inmarcel2005-04-162-6/+21
| | | | | | | | | | | | unw_step(). Both errors denote the end of a stack trace (i.e. no prior frame), but are otherwise not error conditions. Have db_trace() return 0 when the trace ends due to one of these return codes as they are really normal termination conditions. This change especially improves the output of the "show thread" command in DDB when there are threads in fork_trampoline() and previously db_trace() would return an error, causing the show command to emit '***'.
* When setting up the new stack for a function in x86_64_wrap(), makewpaul2005-04-161-5/+7
| | | | | | | sure to make it 16-byte aligned, in keeping with amd64 calling convention requirements. Submitted by: Mikore Li at sun dot com
* Update to DRM CVS as of 2005-04-12, bringing many changes:anholt2005-04-1682-16829/+25924
| | | | | | | | | | | | | | | | | | | | - Split core DRM routines back into their own module, rather than using the nasty templated system like before. - Development-class R300 support in radeon driver (requires userland pieces, of course). - Mach64 driver (haven't tested in a while -- my mach64s no longer fit in the testbox). Covers Rage Pros, Rage Mobility P/M, Rage XL, and some others. - i915 driver files, which just need to get drm_drv.c fixed to allow attachment to the drmsub device. Covers i830 through i915 integrated graphics. - savage driver files, which should require minimal changes to work. Covers the Savage3D, Savage IX/MX, Savage 4, ProSavage. - Support for color and texture tiling and HyperZ features of Radeon. Thanks to: scottl (much p4 handholding) Jung-uk Kim (helpful prodding) PR: [1] kern/76879, [2] kern/72548 Submitted by: [1] Alex, lesha at intercaf dot ru [2] Shaun Jurrens, shaun at shamz dot net
* Fix mbnambuf support for multi-byte characters. If a substring is largernjl2005-04-161-19/+29
| | | | | | | | | | | than WIN_CHARS bytes, we shift the suffix (previous substrings) upwards by the amount this substring exceeds its WIN_CHARS slot. Profiling shows this change is indistinguishable from the previous code at 95% confidence. This bug would result in attempts to access or create files or directories with multi-byte characters returning an error but no data loss. Reported and tested by: avatar MFC after: 3 days
* Add a vm.blacklist tunable which can hold a space or comma seperated listjhb2005-04-151-0/+29
| | | | | | | | | | of physical addresses. The pages containing these physical addresses will not be added to the free list and thus will effectively be ignored by the VM system. This is mostly useful for the case when one knows of specific physical addresses that have bit errors (such as from a memtest run) so that one can blacklist the bad pages while waiting for the new sticks of RAM to arrive. The physical addresses of any ignored pages are listed in the message buffer as well.
* Remove NO_MIXED_MODE optionpeter2005-04-151-1/+0
|
* MFi386: sync rtc code - don't setup an interrupt handler for irq0 whenpeter2005-04-151-28/+32
| | | | | the lapic timer is active. Don't enable periodic interrupts unless we are using them. Replace spl protection with a spinlock.
* MFi386: remove NO_MIXED_MODEpeter2005-04-152-10/+0
|
* MFi386: use the lapic timer for UP systems that are using the apic so thatpeter2005-04-154-95/+19
| | | | | IRQ0 and mixed mode isn't a problem anymore. This removes mixed mode support because nothing is left that uses it.
* MFi386: use c99 typespeter2005-04-151-2/+2
|
* Show that I can actually count.peter2005-04-151-2/+2
|
* MFi386: track bus.h changes (unsplit bus_${machine}.h)peter2005-04-152-1233/+1219
|
* MFi386: revision 1.219.nyan2005-04-151-1/+0
|
* Make things compile again with ATA_STATIC_ID.sos2005-04-151-2/+2
|
* Fix a typo in the comment.maxim2005-04-151-1/+1
| | | | Noticed by: Samy Al Bahra
* Move the creation of ata_channel child devices to the channel code.sos2005-04-158-179/+135
| | | | | | | | | This allows to attach to the children (ATA devices) even without a driver being attached. This allows atapi-cam to do its work both with and without the pure ATAPI driver being present. ATA patches by /me ATAPI-cam pathes by Thomas
* - Return error, if there was one.glebius2005-04-151-2/+2
| | | | | | | - No need to initialize error here. PR: kern/79884 Submitted by: Wojciech A. Koszek
* Really remove the last vestiges of mixed mode from all but amd64.jhb2005-04-152-21/+0
|
* Oops, remove last mention of mixed mode.jhb2005-04-151-1/+0
| | | | Prodded by: marks
* Zero the ifr.ifr_name buffer in ifconf() in order to avoidcperciva2005-04-151-0/+6
| | | | | | accidental disclosure of kernel memory to userland. Security: FreeBSD-SA-05:04.ifconf
* Centralized finding the protocol header in IP packets in preperation forbrooks2005-04-151-92/+109
| | | | | | | IPv6 support. The header in IPv6 is more complex then in IPv4 so we want to handle skipping over it in one location. Submitted by: Mariano Tortoriello and Raffaele De Lorenzo (via luigi)
* Initialize curthread before we save the APs MCA state. Saving themarcel2005-04-151-6/+8
| | | | | | | | MCA state requires a spin lock, which requires a valid curthread. This change allows SMP kernels to boot into multi-user again. While here, update the copyright notice and use __FBSDID for the revision string.
* Fix for a TCP SACK bug where more than (win/2) bytes could have beenps2005-04-144-3/+76
| | | | | | | | | in flight in SACK recovery. Found by: Noritoshi Demizu Submitted by: Mohan Srinivasan <mohans at yahoo-inc dot com> Noritoshi Demizu <demizu at dd dot ij4u dot or dot jp> Raja Mukerji <raja at moselle dot com>
* Close a race I introduced in the spinlock_* changes. We need to finishjhb2005-04-141-1/+3
| | | | | | | | disabling interrupts before updating the saved pil in the thread. If we save the value first then it can be clobbered if an interrupt comes in and the interrupt handler tries to acquire a spin lock. Submitted by: marius
* Trust the settings programmed by the BIOS over what the $PIR says.jhb2005-04-141-18/+48
| | | | | | | | Specifically, if the BIOS has programmed an IRQ for a device that doesn't match the list of valid IRQs for the link, use it anyway as some BIOSes don't correctly list the valid IRQs in the $PIR. Also, allow the user to specify an IRQ that $PIR claims is invalid as an override, but emit a warning in that case.
* Remove support for mixed mode altogether now that we no longer use IRQ 0jhb2005-04-146-99/+8
| | | | | | when using an APIC. This simplifies the APIC code somewhat and also allows us to be pedantically more compliant with ACPI which mandates no use of mixed mode.
* Call pci_print_verbose() before pci_add_resources() so that the order ofjhb2005-04-141-1/+1
| | | | | | printf's during a verbose boot is more intuitive (the BAR listings and interrupt routing info now comes after the config header dump rather than just before it).
* Implement 32-bit compatable fsbase/gsbase methods so that we can runpeter2005-04-142-0/+26
| | | | (newer) unmodified static i386 binaries again.
* Move MAC check_vnode_mmap entry point out from being exclusive tocsjp2005-04-1411-19/+23
| | | | | | | | | | | | | | | | | | | | MAP_SHARED so that the entry point gets executed un-conditionally. This may be useful for security policies which want to perform access control checks around run-time linking. -add the mmap(2) flags argument to the check_vnode_mmap entry point so that we can make access control decisions based on the type of mapped object. -update any dependent API around this parameter addition such as function prototype modifications, entry point parameter additions and the inclusion of sys/mman.h header file. -Change the MLS, BIBA and LOMAC security policies so that subject domination routines are not executed unless the type of mapping is shared. This is done to maintain compatibility between the old vm_mmap_vnode(9) and these policies. Reviewed by: rwatson MFC after: 1 month
* In ppsintr, we needed ppsdev to get to the softc and nothing else.imp2005-04-141-11/+7
| | | | | | | | | | | | | | | Save a memory dereference in the ISR by passing this in directly. Calling pps_capture is MP safe for all other operations on struct pps_state, so there's no need to aquire the lock before we do this, even from a fast ISR. Avoid dereferencing sc->ppbus until after pps_capture is called as well. These actions reduce somewhat the cache effects that cause variance in interrupt times. On an especially slow test machine (300MHz Cyrix GXm), this reduces the interrupt latency about about 10% (from 21us to 19us) and helps a little with the variance (although most of the variance seems to be caused by lots of interrupt masking). This also happens fixes one or two of bde's style issues.
* Correct typo.brueffer2005-04-141-1/+1
| | | | Obtained from: OpenBSD
* Unbreak the vector_page == 0x00000000 case. Map the vector page L1PT into thecognet2005-04-141-2/+4
| | | | | kernel domain for each pmap, as we don't update the page table when we're switching to a kernel thread, but we do however update the DACR.
* MFi386: revision 1.612.nyan2005-04-142-100/+176
|
* MFi386: revision 1.20.nyan2005-04-141-1/+1
|
* Remove dead code which would never execute.gnn2005-04-141-18/+18
| | | | | | | | | | | i.e. checking to see if a cluster was every less than 48 bytes, a rather unlikely case. Check return value of m_dup_pkthdr() calls. Found by: Coverity Reviewed by: rwatson (mentor), Keiichi Shima (for Kame) Approved by: rwatson (mentor)
* Read back the real taskfile register values when in 48BIT mode.sos2005-04-142-6/+23
|
* - cache_lookup() relocks the parent in the DOTDOT case for us.jeff2005-04-142-4/+0
| | | | | Spotted by: phk Sponsored by: Isilon Systems, Inc.
* Use AcpiUtStrupr() instead of strupr() as the latter will disappear inmarks2005-04-141-1/+1
| | | | | | future versions of acpica. MFC after: 2 weeks
* Probe PCI link devices early so that we turn them all off via _DIS beforejhb2005-04-141-0/+4
| | | | | | | | | we start turning any of them back on again. This works around a bug in some BIOSen that alias two different link devices for APIC vs ATPIC modes onto the same physical hardware link. Submitted by: njl Tested by: Antoine Brodin antoine dot brodin at laposte dot net
* Bah, add a missing cast.jhb2005-04-141-1/+1
|
* Close a race between sleepq_broadcast() and sleepq_catch_signals().jhb2005-04-141-47/+21
| | | | | | | | | | | | | | | | | | | | | | Specifically, sleepq_broadcast() uses td_slpq for its private pending queue of threads that it is going to wake up after it takes them off the sleep queue. The problem is that if one of the threads is actually not asleep yet, then we can end up with td_slpq being corrupted and/or the thread being made runnable at the wrong time resulting in the td_sleepqueue == NULL assertion failures occasionally reported under heavy load. The fix is to stop being so fancy and ditch the whole pending queue bit. Instead, sleepq_remove_thread() and sleepq_resume_thread() were merged into one function that requires the caller to hold sched_lock. This fixes several places that unlocked sched_lock only to call a function that then locked sched_lock, so even though sched_lock is now held slightly longer, removing the extra lock acquires (1 pair instead of 3 in some cases) probably makes it an overall win if you don't include the fact that it closes a race. This is definitely a 5.4 candidate. PR: kern/79693 Submitted by: Steven Sears stevenjsears at yahoo dot com MFC after: 4 days
* Always use the local APIC timer, even on UP machines.jhb2005-04-142-8/+0
|
* If an I/O APIC returns 0xffffffff for its version register after we map it,jhb2005-04-141-2/+11
| | | | | | | assume it is bogus and return NULL instead of trying to parse it as an APIC. Inspired by: linux bug reports via njl
* rev 1.54 of i386/include/pcb.h depended on sys/proc.h. The prerequisitepeter2005-04-142-0/+2
| | | | | | | | was satisified for the rest of the kernel on the i386 build except for these two files. Rather than adding a submarine include to pcb.h, I've added proc.h here. I forgot to include these with the original commit. Sorry folks.
* Make sure we look at the correct sub op codes whenmjacob2005-04-141-3/+22
| | | | | | | | deciding whether it's an operation we can perform via the control device. PR: kern/72010 MFC after: 1 week
* Take constructive advice from njl && reformatmjacob2005-04-141-0/+6
| | | | previously added quirks slightly.
* Quirk for ZICPlay USB MP3 Player.njl2005-04-141-0/+8
| | | | | PR: kern/75057 Submitted by: Aurelien Nephtali <aurelien.nephtali wanadoo.fr>
* It seems I introduced a new prerequisite for <machine/pcb.h> on i386,peter2005-04-141-0/+3
| | | | which is included from <sys/user.h>. Add a bandaid for userland.
OpenPOWER on IntegriCloud