Alan Cox
5da2d6a46d
o Don't set PG_MAPPED on the page allocated and mapped in _pmap_allocpte().
...
(Only set this flag if the mapping has a corresponding pv list entry,
which this mapping doesn't.)
2002-08-03 06:42:30 +00:00
Peter Wemm
8f1586dd65
Take advantage of the fact that there is a small 1MB direct mapped region
...
on x86 in between KERNBASE and the kernel load address. pmap_mapdev()
can return pointers to this for devices operating in the isa "hole".
2002-08-03 01:02:37 +00:00
Peter Wemm
1af04fadd1
Take a shot at fixing a nasty bug in the pmap changes that I did. I
...
missed the pmap_kenter/kremove in this file, which leads to read()/write()
of /dev/mem using stale TLB entries. (gah!) Fortunately, mmap of /dev/mem
wasn't affected, so it wasn't as bad as it could have been. This throws
some light on the 'X server affects stability' thread....
Pointed out by: bde
2002-08-03 00:59:15 +00:00
Poul-Henning Kamp
14a3a6ea0b
Move a prototype to the least wrong place.
...
Suggested by: bde
2002-08-02 18:45:43 +00:00
Poul-Henning Kamp
5f9dcc4468
SYSINIT needs to be SI_SUB_PSEUDO. Add a printf to tell we are here.
2002-08-02 16:47:29 +00:00
Poul-Henning Kamp
927b6b099d
Add the minimalist elan-mmcr device driver.
...
This driver allows a userland program to mmap the MMCR of the AMD
Elan sc520 CPU.
2002-08-02 15:53:04 +00:00
Alan Cox
64a1b85efa
o Lock page queue accesses by vm_page_deactivate().
2002-08-02 04:14:19 +00:00
Marc Fonvieille
c0727dcbfe
Fix the link to the Handbook
2002-08-01 17:21:18 +00:00
Mitsuru IWASAKI
6a7ef08763
Fix a bug about stack manipulation at ACPI wakeup.
...
This should avoid kernel panic on kernel compiled w/o
NO_CPU_COPTFLAGS.
Suggested by: optimized code by -mcpu=pentiumpro
2002-08-01 09:48:01 +00:00
Alan Cox
239b5b9707
o Setting PG_MAPPED and PG_WRITEABLE on pages that are mapped and unmapped
...
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.
2002-07-31 18:46:47 +00:00
Poul-Henning Kamp
ab4db9b74f
The Elan SC520 MMCR is actually 16bit wide, so u_char is inconvenient.
2002-07-31 13:45:44 +00:00
Mitsuru IWASAKI
b69ed3f4c6
Resolve conflicts arising from the ACPI CA 20020725 import.
2002-07-30 19:35:32 +00:00
Alan Cox
bfd2867046
o Lock page queue accesses by pmap_release_free_page().
2002-07-30 06:45:39 +00:00
Mike Barcroft
49545b3891
Create a new header <machine/_stdint.h> for storing MD parts of
...
<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>.
2002-07-29 17:41:23 +00:00
Alan Cox
14f8ceaa07
o Pass VM_ALLOC_WIRED to vm_page_grab() rather than calling vm_page_wire()
...
in pmap_new_thread(), pmap_pinit(), and vm_proc_new().
o Lock page queue accesses by vm_page_free() in pmap_object_init_pt().
2002-07-29 05:42:44 +00:00
Peter Wemm
23efa1f8ca
Unwind the syscall_with_err_pushed tweak that jake did some time back.
...
OK'ed by: jake
2002-07-28 00:27:51 +00:00
Mike Barcroft
6f0dc1fd51
Catch up to rev 1.339 of src/sys/conf/options (PCI_ENABLE_IO_MODES is
...
now a sysctl and is enabled by default).
2002-07-27 16:25:30 +00:00
Julian Elischer
b6d5995e5f
Add some locking asserts and some comments
2002-07-24 23:21:05 +00:00
Peter Wemm
b618108fff
de-count pci
2002-07-23 06:38:47 +00:00
Peter Wemm
51fabead55
Add unit counts for the i4b stuff where it still uses NFOO etc.
2002-07-21 23:23:14 +00:00
Peter Wemm
d3abf70bbc
Add static unit count for 'card'
2002-07-21 23:09:48 +00:00
Peter Wemm
08240012f9
Add static unit count for pci here as well.
2002-07-21 23:09:15 +00:00
Peter Wemm
fc147d7fe9
Add explicit unit count on 'device pci' for ahc/ahd
2002-07-21 23:07:31 +00:00
Peter Wemm
c06a33507a
The following devices do not take a static unit 'count' argument:
...
ar, fe, lnc, sr, wl, fpa, bktr, sbni
2002-07-21 22:28:43 +00:00
Warner Losh
e300f53ca2
style(9)ize the whole file
...
Approved in concept a long time ago by: msmith
2002-07-21 05:35:42 +00:00
Warner Losh
8b5cc27046
Fix more abuse of __FreeBSD__ to detect version.
2002-07-21 05:34:14 +00:00
Peter Wemm
cd71fd08cc
Stop abusing NPCI for code that doesn't even work. Emit a warning.
2002-07-21 05:25:49 +00:00
Peter Wemm
e344afe7c9
Move SWTCH_OPTIM_STATS related code out of cpufunc.h. (This sort of stat
...
gathering is not an x86 cpu feature)
2002-07-21 05:22:16 +00:00
Peter Wemm
3ebc124838
Infrastructure tweaks to allow having both an Elf32 and an Elf64 executable
...
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).
2002-07-20 02:56:12 +00:00
Alan Cox
4aca0b1510
o Use vm_page_alloc(... | VM_ALLOC_WIRED) in place of vm_page_wire().
2002-07-19 19:35:06 +00:00
Andrew Gallatin
f76ec8facd
Add support for probing secondary buses on the ServerWorks Grand Champion
...
chipset used for P4-Xeon machines
PR: kern/38894
Tested-by: "Marc G. Fournier" <scrappy@hub.org>
Submitted-by: Mark Tinguely (partially)
2002-07-19 18:35:08 +00:00
Mark Murray
4c5aee92a7
Beautify. This has the side effect of improving portability and
...
making lint work cleaner.
Inspired to do this by: jhb
2002-07-18 15:56:46 +00:00
Poul-Henning Kamp
61658cf6a1
Add initialization code for the AMD Elan sc520 which maps the MMCR
...
into KVM and sets the i8254 frequency to the correct value.
2002-07-18 12:56:54 +00:00
Poul-Henning Kamp
3ae87b7ec6
Add an entry for the AMD Elan SC520 hostbridge. I do not belive we can
...
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.
2002-07-18 10:57:20 +00:00
Peter Wemm
a9aa1a970f
Use pmap_kenter() rather than vtopte() and bashing the page tables
...
directly.
2002-07-18 00:42:53 +00:00
Peter Wemm
d08c48b48a
Avoid trying to set PG_G on the first 4MB when we set up the 4MB page.
...
This solves the SMP panic for at least one system. I'd still like to know
why my xeon works though.
Tested by: bmilekic
2002-07-17 21:47:05 +00:00
Mark Murray
8306a37bbb
Clean up the syntax WRT semicolons at the end of function-like-macros, and protect GCCisms from non-GNU compilers and lint.
2002-07-17 16:19:37 +00:00
Matthew Dillon
d4616eacb1
Qualify comment on machdep.cpu_idle_hlt. Turning this on on a SMP
...
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?).
2002-07-17 05:41:43 +00:00
John Baldwin
dde0429505
Various comment and minor style fixes. No actual content changes.
...
Inspired by: bde
2002-07-16 18:20:17 +00:00
Mark Murray
e9b24da3d5
Retire the perl gethints.conf in favour of an awk version. Move
...
the awk version to a central place for maintenance.
Submitted by: Cyrille Lefevre <cyrille.lefevre@laposte.net>
2002-07-16 09:28:25 +00:00
Peter Wemm
239d85c5ad
The pmap_invalidate_all() here is definately not a good idea. We are
...
running with interrupts disabled, other cpus locked down, and only
making a temporary local mapping that we immediately back out again.
Tested by: gallatin
2002-07-15 23:11:49 +00:00
John Baldwin
30cce2ed6b
Add a new VM options section. Move KSTACK_PAGES there from the MI NOTES
...
file and better document it. Add better documentation for the DISABLE_PSE
option. Add the missing DISABLE_PG_G option and document it.
2002-07-15 19:25:40 +00:00
John Baldwin
601969b9aa
The EISA_SLOTS option appears to be i386-only.
2002-07-15 18:55:07 +00:00
John Baldwin
122b088a2a
COMPAT_OLDISA is only used on i386.
2002-07-15 18:50:13 +00:00
John Baldwin
557c19bff3
makeLINT.send has been moved to sys/conf so we can build LINT on other
...
architectures besides i386.
2002-07-15 17:48:47 +00:00
John Baldwin
a916ce1acc
Move ACPI device and options from MI NOTES to the i386 MD NOTES file.
2002-07-15 14:28:20 +00:00
Mark Murray
80a0ead4fe
Wrap GNU specific code in ifdefs, and help lint out by providing
...
some alternative definitions.
2002-07-15 13:29:40 +00:00
Mark Murray
7e622d3c84
Cast to prevent "signed/unsigned comparison" warnings.
2002-07-15 13:27:43 +00:00
Mark Murray
bbcfaa6aa0
Warnings and lint-assisting fixes; mark unused function parameters as
...
unused; wrap GNUisms (asm code) in appropriate #ifdefs.
2002-07-15 13:25:15 +00:00
Alan Cox
700399bc41
o Lock page queue accesses by vm_page_wire().
2002-07-14 20:24:40 +00:00