summaryrefslogtreecommitdiffstats
path: root/sys/amd64
Commit message (Collapse)AuthorAgeFilesLines
* Export the physical address of the RSDP to userland by meansmarcel2002-12-181-11/+29
| | | | | | | | | | of the `machdep.acpi_root' sysctl. This is required on ia64 because the root pointer hardly ever, if at all, lives in the first MB of memory and also because scanning the first MB of memory can cause machine checks. This provides a save and reliable way for ACPI tools to work with the tables if ACPI support is present in the kernel. On ia64 ACPI is non-optional.
* Back out 1.19 to rethink approachnjl2002-12-171-2/+2
| | | | Requested by: julian@
* Automatically issue a "continue" along with the "detach" command. Thisnjl2002-12-171-2/+2
| | | | | | fixes the problem of cleanly restarting a target after entering gdb mode. Reviewed by: archie@
* Reformat last changejulian2002-12-161-5/+7
| | | | Requested by: nate@
* Don't dump core into a partition that is too small for it.julian2002-12-161-0/+9
| | | | | If we do, we usually wrote backwareds into the proceeding partititon which is usually the root partition.
* Add the trm(4) driver.cognet2002-12-161-0/+1
| | | | MFC after: 1 day
* Regen: swapoffmarcel2002-12-163-4/+5
|
* Change swapoff from MNOPROTO to UNIMPL. The former doesn't work.marcel2002-12-161-1/+1
|
* This is David Schultz's swapoff code which I am finally able to commit.dillon2002-12-151-0/+1
| | | | | | | This should be considered highly experimental for the moment. Submitted by: David Schultz <dschultz@uclink.Berkeley.EDU> MFC after: 3 weeks
* Only dump the BIOS geometry table from bootinfo on PC98, we don't usephk2002-12-141-1/+5
| | | | the contents on i386 anymore.
* Add page locking to pmap_mincore().alc2002-12-141-12/+20
| | | | Submitted (in part) by: tjr@
* SCARGS removal take II.alfred2002-12-142-133/+128
|
* Backout removal SCARGS, the code freeze is only "selectively" over.alfred2002-12-132-128/+133
|
* Remove SCARGS.alfred2002-12-132-133/+128
| | | | Reviewed by: md5
* Unbreak the KSE code. Keep track of zobie threads using the Per-CPU storagejulian2002-12-101-1/+12
| | | | | | | | during the context switch. Rearrange thread cleanups to avoid problems with Giant. Clean threads when freed or when recycled. Approved by: re (jhb)
* Add "disabled" hints to all of the uncommon ISA devices that are injhb2002-12-051-0/+12
| | | | | | | | | GENERIC. Each device can be re-enabled at startup time by unsetting the disabled hint in the loader. Requested by: mdodd Approved by: re Prodded by: rwatson
* Hold the page queues lock around calls to pmap_remove().alc2002-12-041-0/+2
| | | | Approved by: re
* Use the correct value when writing the Day Of Week byte in the CMOS.phk2002-12-042-2/+2
| | | | | | | | | | | | | | | | | The correct range is [1...7] with Sunday=1, but we have been writing [0...6] with Sunday=0. The Soekris computers flagged the zero, zapped the date, so if you rebooted your soekris on a sunday, it would come up with a wrong date. Bruce has a more extensive rework of this code, but we will stick with the minimalist fix for now. Spotted by: Soren Kristensen <soren@soekris.com> Thanks to: Michael Sierchio <kudzu@tenebras.com>. Confirmed by: bde Approved by: re
* Avoid recursive acquisition of the page queues lock in pmap_unuse_pt().alc2002-12-031-1/+3
| | | | Approved by: re
* Align the FPU state in the ucontext and sigcontext to 16 bytesdeischen2002-12-026-29/+45
| | | | | | | | | to accomodate the new SSE/XMM floating point save/restore instructions. This commit is mostly from bde and includes some style nits. Approved by: re (jhb)
* Hold the page queues lock when calling pmap_unwire_pte_hold() oralc2002-12-021-3/+10
| | | | | | | | pmap_remove_pte(). Use vm_page_sleep_if_busy() in _pmap_unwire_pte_hold() so that the page queues lock is released when sleeping. Approved by: re (blanket)
* Assert that the page queues lock is held in pmap_changebit()alc2002-12-011-2/+2
| | | | | | and pmap_ts_referenced(). Approved by: re (blanket)
* Assert that the page queues lock is held in pmap_page_exists_quick().alc2002-11-301-1/+1
| | | | Approved by: re (blanket)
* Assert that the page queues lock is held in pmap_remove_pages().alc2002-11-251-1/+1
| | | | Approved by: re (blanket)
* Add page queues locking to vunmapbuf(); reduce differences with respectalc2002-11-241-3/+3
| | | | | | | to the sparc64 implementation. (Note: With modest effort on the alpha and ia64 this function could migrate to the MI part of the kernel.) Approved by: re (blanket)
* Add `if (!cold)' checkings for functions which is called via SYSINIT.iwasaki2002-11-241-0/+3
| | | | | | | Loading acpi.ko with kldload is disallowed, however some functions were executed unexpectedly. Approved by: re
* - Assert that the page queues lock is held in pmap_remove_all().alc2002-11-231-10/+4
| | | | | | | - Fix a diagnostic message and comment in pmap_remove_all(). - Eliminate excessive white space from pmap_remove_all(). Approved by: re
* Under certain circumstances, we were calling kmem_free() frommux2002-11-221-9/+17
| | | | | | | | | | i386 cpu_thread_exit(). This resulted in a panic with WITNESS since we need to hold Giant to call kmem_free(), and we weren't helding it anymore in cpu_thread_exit(). We now do this from a new MD function, cpu_thread_dtor(), called by thread_dtor(). Approved by: re@ Suggested by: jhb
* *sigh*. It seems that in the ACPICA code, Intel defines its own APIC_IOjhb2002-11-211-1/+1
| | | | | | | | | | macro for use when parsing MADT tables, thus we always tried to set the interrupt model to APIC. This proved to be harmful on UP machines with IO APIC's (or for UP kernels on SMP machines) since the wrong interrupt routing information would be returned. Pointy hat to: jhb Approved by: re (rwatson)
* Regenerate after adding syscalls.deischen2002-11-163-4/+13
|
* Add *context() syscalls to ia64 32-bit compatability table as requesteddeischen2002-11-161-0/+3
| | | | in kern/syscalls.master.
* Add getcontext, setcontext, and swapcontext as system calls.deischen2002-11-165-17/+11
| | | | | | | | | | | Previously these were libc functions but were requested to be made into system calls for atomicity and to coalesce what might be two entrances into the kernel (signal mask setting and floating point trap) into one. A few style nits and comments from bde are also included. Tested on alpha by: gallatin
* MFp4:imp2002-11-141-1/+1
| | | | | o Fix small style nit. This was supposed to be part of the last batch of style fixes, but somehow didn't get merged.
* Recognize the Serverworks CIOB30 host to pci bridge.peter2002-11-131-0/+5
|
* Loader tunable 'machdep.disable_mtrrs'.mdodd2002-11-131-1/+7
| | | | | | | | Sysctl of same name to reflect status. Submitted by: jhb Approved by: re (murray) MFC after: 1 day
* Move pmap_collect() out of the machine-dependent code, rename italc2002-11-131-31/+1
| | | | | | | | to reflect its new location, and add page queue and flag locking. Notes: (1) alpha, i386, and ia64 had identical implementations of pmap_collect() in terms of machine-independent interfaces; (2) sparc64 doesn't require it; (3) powerpc had it as a TODO.
* - Clear the page's PG_WRITEABLE flag in the i386's pmap_changebit()alc2002-11-111-3/+5
| | | | | | if we're removing write access from the page's PTEs. - Export pmap_remove_all() on alpha, i386, and ia64. (It's already exported on sparc64.)
* Add a new loader tunable, hw.hasbrokenint12, to indicate that BIOSiwasaki2002-11-091-46/+78
| | | | | | | | | | has broken int 12H. If hw.hasbrokenint12="1" in loader environment, kernel never use BIOS INT 12 call to determine base memory size. Otherwise, kernel use INT 12 in old behaviour. This should fix kernel panic problem caused by 1.544 changes. MFC after: 1 day
* Print real / avail memory in megabytes rather than kilobytes.des2002-11-091-4/+4
|
* Move the definitions of the hw.physmem, hw.usermem and hw.availpagestmm2002-11-071-37/+0
| | | | | | | | | | | sysctls to MI code; this reduces code duplication and makes all of them available on sparc64, and the latter two on powerpc. The semantics by the i386 and pc98 hw.availpages is slightly changed: previously, holes between ranges of available pages would be included, while they are excluded now. The new behaviour should be more correct and brings i386 in line with the other architectures. Move physmem to vm/vm_init.c, where this variable is used in MI code.
* Properly parenthesize the DBREG_DRX macro's variables to allow foralfred2002-11-071-1/+1
| | | | DBREG_DRX(&dbregs, n) usage.
* Simplify and optimize pmap_object_init_pt(). More specifically,alc2002-11-071-65/+32
| | | | | | take advantage of the fact that the vm object's list of pages is now ordered to reduce the overhead of finding the desired set of pages to be mapped. (See revision 1.215 of vm/vm_page.c.)
* 1.Fix smp race between kernel vm86 BIOS calling and userland vm86 mode code,davidxu2002-11-075-11/+14
| | | | | | | | | | remove global variable in_vm86call, set vm86 calling flag in PCB flags. 2.Fix vm86 BIOS calling preempted problem by changing vm86_lock mutex type from MTX_DEF to MTX_SPIN. vm86pcb is not remembered in thread struct, when the thread calling vm86 BIOS is preempted by interrupt thread, and later switching back to the thread would cause incorrect context be loaded into CPU registers, this leads to kernel crash.
* Remove what was a temporary bogus assignment of bits of siginfo_t, as it doesjmallett2002-11-061-4/+0
| | | | | | not look like the prerequisites to fill it in properly will be in the tree for the upcoming release, but it's mostly done, so there is no need for these to stay around to remind us.
* Fix typo. ioport_rid should be irq_rid.davidxu2002-11-052-2/+2
|
* Sync to src/sys/kern/syscalls.masterrwatson2002-11-021-1/+1
|
* MFp4:imp2002-11-021-10/+34
| | | | | | | | | | | | | | | o It turns out that we always need to try to route the interrupts for the case where the $PIR tells us there can be only one. Some machines require this, while others fail when we try to do this (bogusly, imho). Since we have no apriori way of knowing which is which, we always try to do the routing and hope for the best if things fail. o Add some additional comments that state the obvious, but amplify it in non-obvious ways (judging from the questions I've gotten). This should un-break older laptops that still have to use PCIBIOS to route interrupts. Tested by: sam
* Use 0xffffffff instead of -1 for id to compare against.imp2002-11-021-10/+11
| | | | | | | Use exact width types, since this is a MD file and won't be used elsewhere. Fix a couple of resulting printf breakages Bug found by: phk using Flexlint
* Note that the sched_lock protects md_ldt of struct mdproc.jhb2002-10-251-1/+1
|
* Finish fixing the 5.x FPU code for dealing with signal handlers.peter2002-10-252-0/+2
| | | | Obtained from: bde
OpenPOWER on IntegriCloud