Commit Graph

34795 Commits

Author SHA1 Message Date
fvdl 2934facefc use CVAROFF. 2003-03-03 22:17:15 +00:00
fvdl 60ff7764b1 Use pmap_cpu_has_pg_n() 2003-03-03 22:16:54 +00:00
fvdl 22c3c5973b The IDT is an array of struct gate_descriptor. 2003-03-03 22:16:20 +00:00
fvdl 5d9be5f0db The IDT only contains gate descriptors, so define it as such. 2003-03-03 22:14:15 +00:00
fvdl 1b64bc0ae7 define pmap_cpu_has_pg_n and pmap_cpu_has_invlpg to make code sharing
easier.
2003-03-03 22:13:16 +00:00
fvdl 3ebdf8bcc3 Make CVAR asm reference macro CVAROFF, taking an offset. 2003-03-03 22:12:22 +00:00
fvdl cf1495e079 Install cpuvar.h 2003-03-03 20:26:18 +00:00
ragge 6c0c8e1049 Change the pmap to use 512-byte pages as user page table pages instead of
PAGE_SIZE pages (4k). An average small program uses ~6 4k pages (24k),
while the same program only uses ~20 512 byte pages (10k), so it will be
a small memory usage improvement. The large improvement will be the upcoming
ability to share page table pages between processes for shared libraries.

Remaining: should be able to give back ptp pages to the system.
2003-03-02 22:19:06 +00:00
christos 767bfa5fb6 microtime.S depends on assym.h 2003-03-02 22:19:05 +00:00
ragge 2b65555cf7 Change the pmap to use 512-byte pages as user page table pages instead of
PAGE_SIZE pages (4k). An average small program uses ~6 4k pages (24k),
while the same program only uses ~20 512 byte pages (10k), so it will be
a small memory usage improvement. The large improvement will be the upcoming
ability to share page table pages between processes for shared libraries.

Remaining: should be able to give back ptp pages to the system.
2003-03-02 22:19:04 +00:00
tshiozak 31e2cbf0b5 add some ISO C 1995 I18N functions and types:
btowc, wctrans, towctrans, wcscoll, wcsxfrm, wctype_t and wctrans_t.
2003-03-02 22:18:11 +00:00
pk 77accc351e Use the new pmap_kprotect() function instead of pmap_changeprot().
The latter is now a pmap internal function; and it wasn't used correctly
in mkclock.c anyway.
2003-03-02 21:42:48 +00:00
pk 22cf03a09f pmap_changeprot() is not a UVM <-> PMAP interface function; make it internal.
Provide pmap_kprotect() for MD code to change protection on a range of
kernel addresses (cuurent users: intr.c and mkclock.c).
2003-03-02 21:37:20 +00:00
fvdl 7f72a2bff2 Clean up some unneeded "mca.h" and "eisa.h" includes, make one that is
needed dependent on !__x86_64__. To be revisited later.
2003-03-02 18:27:14 +00:00
fvdl 636c7ca859 x86_64 has no mca.h and eisa.h (should perhaps just generate empty ones) 2003-03-02 18:11:03 +00:00
fvdl 8d69f823b1 Redirect to x86/ 2003-03-02 18:09:42 +00:00
tsutsui 8aa243df44 Bump SYMTAB_SPACE to 192000. 2003-03-02 04:42:40 +00:00
tsutsui 9c5dcb82ac Cleanup G2_LOCK/G2_UNLOCK macros per discussion on port-dreamcast:
- Use _cpu_intr_suspend()/_cpu_intr_resume() in G2_LOCK/G2_UNLOCK macros
  rather than _cpu_exception_suspend()/_cpu_exception_resume().
  TLB miss exceptions could happen on accessing buffer, but it will never
  block G2bus cycle anyway.
- Restore the previous SR.IMASK value in G2_UNLOCK().
- some misc cosmetics.

Should fix spontaneous reboots by "ping -s 8192 host" on the LAN Adapter.
2003-03-02 04:23:16 +00:00
matt 5401f85320 Restore MQ to trapframe from mcontext since it's in both. 2003-03-02 01:07:55 +00:00
fvdl 0cb6724bc7 lock_machdep.c moved here from arch/i386/i386. 2003-03-01 22:55:02 +00:00
fvdl f555536d9b Move lock_machdep.c to arch/x86/x86. 2003-03-01 22:53:39 +00:00
matt 986f7ca902 Add machdep sysctl support. Support booted_device, consdev, and
printfataltraps.
2003-03-01 21:51:59 +00:00
fvdl aeaf29a3a3 Redirect to x86/cpuvar.h 2003-03-01 18:30:03 +00:00
fvdl 9ad868eb65 Moved here from i386/include 2003-03-01 18:29:28 +00:00
fvdl a3b7772adf Move the CPU identification out of machdep.c into a seperate file. 2003-03-01 16:37:51 +00:00
fvdl de9139c67d Follow the spec more closely, and do an ljmp immediately after enabling
protected mode, not several instructions afterwards.
2003-03-01 16:36:37 +00:00
fvdl dbef38adbf This was still falsely referencing the ipending variable, which isn't
used anymore. Use curcpu()->ci_ipending (== cpu_info_primary.ci_pending,
since this is only used in the UP case).
2003-03-01 16:35:07 +00:00
fvdl d2315fd2b7 Remove accidentally enabled debug printf.
From Enami.
2003-03-01 13:05:37 +00:00
pk 1b5340d327 Add support for large kernels by searching for a physical memory segment
to fit it in. As a bonus, the kernel is now also mapped to the virtual
address (i.e. KERNBASE) it is linked at.
2003-03-01 13:01:55 +00:00
thorpej 5afa6838bf Do the syscall_plain/syscall_fancy dance on ARM. Shaves a fair number
of cycles off the syscall overhead.

Since all COMPAT_LINUX platforms now support __HAVE_SYSCALL_INTERN,
garbage-collect the LINUX_SYSCALL_FUNCTION stuff.
2003-03-01 04:36:38 +00:00
matt a391bf2e06 Make this play with gcc 3.3. Add -ffreestanding. Cleanup bootxx. 2003-02-28 05:24:56 +00:00
scw 2125ffc454 Move the -D__daddr_t from libsa/Makefile to Makefile.booters so
the bootloaders get to benefit from it, not just libsa.
2003-02-27 20:38:34 +00:00
perseant eab869e1c0 Make BRIDGE_IPF an option, and document it. Add it (commented) to GENERIC.
Let brconfig tell whether the bridge is using the ipfilter hook, or not.
2003-02-27 19:22:36 +00:00
bsh e6ef3bc041 Some interrupt controllers can select polarity of interrupt signals.
add IST_LEVEL_{LOW,HIGH} and IST_EDGE_{FALLING,RISING,BOTH} for them.
2003-02-27 14:55:41 +00:00
pk 33bdc2efe0 Free page table pages to the same VM map they were allocated from. 2003-02-27 14:19:41 +00:00
hannken c03626b07b Change "i386_trunc_page" to "x86_trunc_page". 2003-02-27 12:22:52 +00:00
fvdl f8b0474185 Reinstate some const qualifiers I accidentally removed when moving this
file.
2003-02-27 11:22:46 +00:00
matt 229495b6d3 Need to forward declare struct buf and struct pte for function prototypes. 2003-02-27 07:14:19 +00:00
igy d67ca5b2e7 locator should use physical addresses 2003-02-27 04:06:07 +00:00
fvdl dd22310ae1 Add consinit.c 2003-02-27 01:50:40 +00:00
fvdl ba3f3ceb24 Catch up with consinit.c move. 2003-02-27 01:49:29 +00:00
fvdl b5a7ec69dd Moved here from arch/i386/i386. 2003-02-27 01:49:05 +00:00
fvdl 10648a4e04 Moved to x86/x86 2003-02-27 01:48:44 +00:00
fvdl d89d6b98f7 Catch up with isa_machdep.c and pci_machdep.c move. 2003-02-27 00:39:40 +00:00
fvdl e397aa2f84 Moved here from i386/pci. 2003-02-27 00:30:31 +00:00
fvdl b7b9aa9909 Moved to x86/pci. 2003-02-27 00:30:21 +00:00
fvdl 8556a55a8d Moved here from i386/isa 2003-02-27 00:28:08 +00:00
fvdl 2c7dd6813f Moved to x86/isa. 2003-02-27 00:27:54 +00:00
fvdl c0ed70b13c Adapt for move to x86/include. 2003-02-27 00:12:21 +00:00
fvdl 20e439b5cb Move a few more files to x86/include. Trim the list of files to install
in /usr/include a bit.
2003-02-27 00:10:56 +00:00