summaryrefslogtreecommitdiffstats
path: root/sys/i386
Commit message (Collapse)AuthorAgeFilesLines
* Move a prototype to the least wrong place.phk2002-08-023-1/+2
| | | | Suggested by: bde
* SYSINIT needs to be SI_SUB_PSEUDO. Add a printf to tell we are here.phk2002-08-021-1/+2
|
* Add the minimalist elan-mmcr device driver.phk2002-08-022-0/+86
| | | | | This driver allows a userland program to mmap the MMCR of the AMD Elan sc520 CPU.
* o Lock page queue accesses by vm_page_deactivate().alc2002-08-021-3/+15
|
* Fix the link to the Handbookblackend2002-08-011-1/+1
|
* Fix a bug about stack manipulation at ACPI wakeup.iwasaki2002-08-011-0/+1
| | | | | | | This should avoid kernel panic on kernel compiled w/o NO_CPU_COPTFLAGS. Suggested by: optimized code by -mcpu=pentiumpro
* o Setting PG_MAPPED and PG_WRITEABLE on pages that are mapped and unmappedalc2002-07-311-2/+0
| | | | | | | | | | | | by pmap_qenter() and pmap_qremove() is pointless. In fact, it probably leads to unnecessary pmap_page_protect() calls if one of these pages is paged out after unwiring. Note: setting PG_MAPPED asserts that the page's pv list may be non-empty. Since checking the status of the page's pv list isn't any harder than checking this flag, the flag should probably be eliminated. Alternatively, PG_MAPPED could be set by pmap_enter() exclusively rather than various places throughout the kernel.
* The Elan SC520 MMCR is actually 16bit wide, so u_char is inconvenient.phk2002-07-312-2/+2
|
* Resolve conflicts arising from the ACPI CA 20020725 import.iwasaki2002-07-301-0/+125
|
* o Lock page queue accesses by pmap_release_free_page().alc2002-07-301-0/+2
|
* Create a new header <machine/_stdint.h> for storing MD parts ofmike2002-07-294-231/+171
| | | | | | | | | <stdint.h>. Previously, parts were defined in <machine/ansi.h> and <machine/limits.h>. This resulted in two problems: (1) Defining macros in <machine/ansi.h> gets in the way of that header only defining types. (2) Defining C99 limits in <machine/limits.h> adds pollution to <limits.h>.
* o Pass VM_ALLOC_WIRED to vm_page_grab() rather than calling vm_page_wire()alc2002-07-291-13/+5
| | | | | in pmap_new_thread(), pmap_pinit(), and vm_proc_new(). o Lock page queue accesses by vm_page_free() in pmap_object_init_pt().
* Unwind the syscall_with_err_pushed tweak that jake did some time back.peter2002-07-282-3/+17
| | | | OK'ed by: jake
* Catch up to rev 1.339 of src/sys/conf/options (PCI_ENABLE_IO_MODES ismike2002-07-271-5/+0
| | | | now a sysctl and is enabled by default).
* Add some locking asserts and some commentsjulian2002-07-241-0/+1
|
* de-count pcipeter2002-07-234-4/+4
|
* Add unit counts for the i4b stuff where it still uses NFOO etc.peter2002-07-211-13/+13
|
* Add static unit count for 'card'peter2002-07-211-1/+1
|
* Add static unit count for pci here as well.peter2002-07-212-2/+2
|
* Add explicit unit count on 'device pci' for ahc/ahdpeter2002-07-212-2/+2
|
* The following devices do not take a static unit 'count' argument:peter2002-07-211-1/+1
| | | | ar, fe, lnc, sr, wl, fpa, bktr, sbni
* style(9)ize the whole fileimp2002-07-212-948/+984
| | | | Approved in concept a long time ago by: msmith
* Fix more abuse of __FreeBSD__ to detect version.imp2002-07-211-63/+0
|
* Stop abusing NPCI for code that doesn't even work. Emit a warning.peter2002-07-211-5/+1
|
* Move SWTCH_OPTIM_STATS related code out of cpufunc.h. (This sort of statpeter2002-07-213-13/+9
| | | | gathering is not an x86 cpu feature)
* Infrastructure tweaks to allow having both an Elf32 and an Elf64 executablepeter2002-07-204-6/+48
| | | | | | | | | | | | | | | handler in the kernel at the same time. Also, allow for the exec_new_vmspace() code to build a different sized vmspace depending on the executable environment. This is a big help for execing i386 binaries on ia64. The ELF exec code grows the ability to map partial pages when there is a page size difference, eg: emulating 4K pages on 8K or 16K hardware pages. Flesh out the i386 emulation support for ia64. At this point, the only binary that I know of that fails is cvsup, because the cvsup runtime tries to execute code in pages not marked executable. Obtained from: dfr (mostly, many tweaks from me).
* o Use vm_page_alloc(... | VM_ALLOC_WIRED) in place of vm_page_wire().alc2002-07-191-4/+2
|
* Add support for probing secondary buses on the ServerWorks Grand Championgallatin2002-07-191-0/+11
| | | | | | | | chipset used for P4-Xeon machines PR: kern/38894 Tested-by: "Marc G. Fournier" <scrappy@hub.org> Submitted-by: Mark Tinguely (partially)
* Beautify. This has the side effect of improving portability andmarkm2002-07-181-39/+31
| | | | | | making lint work cleaner. Inspired to do this by: jhb
* Add initialization code for the AMD Elan sc520 which maps the MMCRphk2002-07-184-4/+53
| | | | into KVM and sets the i8254 frequency to the correct value.
* Add an entry for the AMD Elan SC520 hostbridge. I do not belive we canphk2002-07-181-0/+3
| | | | | | identify this gadget on the CPUID result alone, so I intend to activate the necessary magic (i8254 frequency for instance) for it based on the precense of the on-chip host to PCI bridge.
* Use pmap_kenter() rather than vtopte() and bashing the page tablespeter2002-07-181-14/+3
| | | | directly.
* Avoid trying to set PG_G on the first 4MB when we set up the 4MB page.peter2002-07-171-0/+6
| | | | | | | This solves the SMP panic for at least one system. I'd still like to know why my xeon works though. Tested by: bmilekic
* Clean up the syntax WRT semicolons at the end of function-like-macros, and ↵markm2002-07-171-23/+74
| | | | protect GCCisms from non-GNU compilers and lint.
* Qualify comment on machdep.cpu_idle_hlt. Turning this on on a SMPdillon2002-07-171-3/+10
| | | | | | | machine will result in approximately a 4.2% loss of performance (buildworld) and approximately a 5% reduction in power consumption (when idle). Add XXX note on how to really make hlt work (send an IPI to wakeup HLTed cpus on a thread-schedule event? Generate an interrupt somehow?).
* Various comment and minor style fixes. No actual content changes.jhb2002-07-161-8/+8
| | | | Inspired by: bde
* Retire the perl gethints.conf in favour of an awk version. Movemarkm2002-07-162-100/+116
| | | | | | the awk version to a central place for maintenance. Submitted by: Cyrille Lefevre <cyrille.lefevre@laposte.net>
* The pmap_invalidate_all() here is definately not a good idea. We arepeter2002-07-151-2/+2
| | | | | | | running with interrupts disabled, other cpus locked down, and only making a temporary local mapping that we immediately back out again. Tested by: gallatin
* Add a new VM options section. Move KSTACK_PAGES there from the MI NOTESjhb2002-07-151-3/+25
| | | | | file and better document it. Add better documentation for the DISABLE_PSE option. Add the missing DISABLE_PG_G option and document it.
* The EISA_SLOTS option appears to be i386-only.jhb2002-07-151-0/+8
|
* COMPAT_OLDISA is only used on i386.jhb2002-07-151-0/+1
|
* makeLINT.send has been moved to sys/conf so we can build LINT on otherjhb2002-07-152-9/+2
| | | | architectures besides i386.
* Move ACPI device and options from MI NOTES to the i386 MD NOTES file.jhb2002-07-151-0/+15
|
* Wrap GNU specific code in ifdefs, and help lint out by providingmarkm2002-07-151-2/+18
| | | | some alternative definitions.
* Cast to prevent "signed/unsigned comparison" warnings.markm2002-07-151-2/+2
|
* Warnings and lint-assisting fixes; mark unused function parameters asmarkm2002-07-151-18/+58
| | | | unused; wrap GNUisms (asm code) in appropriate #ifdefs.
* o Lock page queue accesses by vm_page_wire().alc2002-07-141-0/+4
|
* Quick fix for high resolution kernel profiling on i386's. Usebde2002-07-131-0/+4
| | | | | | | | | | | -finstrument-functions instead of -mprofiler-epilogue. The former works essentially the same as the latter but has a higher overhead (about 22 more bytes per function for passing unused args to the profiling functions). Removed all traces of the IDENT Makefile variable, which had been reduced to just a place for holding profiling's contribution to CFLAGS (the IDENT that gives the kernel identity was renamed to KERN_IDENT).
* Two invlpg's slipped through that were not protected from I386_CPUpeter2002-07-131-0/+8
| | | | Pointed out by: dillon
* invlpg() does not work too well on i386 cpus. Add token i386 supportpeter2002-07-131-1/+12
| | | | back in to the pmap_zero_page* stuff.
OpenPOWER on IntegriCloud