Rev |
Age |
Author |
Path |
Log message |
Diff |
Changes |
306 |
6909 d 22 h |
palkovsky |
/SPARTAN/trunk/ |
Fixed mips boot process.
On interrupt saving registers, save $lo, $hi.
Add interrupt naming to asm files (mips).
Save only necessary registers on context switch (see mips ABI).
Fixed copyright info. |
|
/SPARTAN/trunk/arch/mips/boot/boot.S /SPARTAN/trunk/arch/mips/include/asm/regname.h /SPARTAN/trunk/tools/mips /SPARTAN/trunk/tools/mips/gencontext.c
/SPARTAN/trunk/arch/amd64/include/barrier.h /SPARTAN/trunk/arch/mips/boot/boot.s /SPARTAN/trunk/arch/mips/include/asm/macro.h
/SPARTAN/trunk/arch/amd64/include/arch.h /SPARTAN/trunk/arch/amd64/include/context.h /SPARTAN/trunk/arch/amd64/include/faddr.h /SPARTAN/trunk/arch/amd64/include/thread.h /SPARTAN/trunk/arch/mips/boot/Makefile /SPARTAN/trunk/arch/mips/include/context.h /SPARTAN/trunk/arch/mips/include/mm/page.h /SPARTAN/trunk/arch/mips/src/context.S /SPARTAN/trunk/arch/mips/src/mm/tlb.c /SPARTAN/trunk/arch/mips/src/start.S /SPARTAN/trunk/src/Makefile.config /SPARTAN/trunk/src/build.amd64 /SPARTAN/trunk/src/build.mips /SPARTAN/trunk/src/clean.mips
|
303 |
6910 d 15 h |
palkovsky |
/SPARTAN/trunk/ |
|
|
/SPARTAN/trunk/arch/ia32/include/i8259.h /SPARTAN/trunk/src/clean.ia32
|
298 |
6910 d 19 h |
decky |
/SPARTAN/trunk/ |
remove lower 2 GB identity mapping (IA-32) |
|
/SPARTAN/trunk/arch/ia32/src/boot/boot.S /SPARTAN/trunk/arch/ia32/src/mm/page.c /SPARTAN/trunk/arch/ia32/src/smp/ap.S /SPARTAN/trunk/arch/ia32/src/smp/smp.c /SPARTAN/trunk/src/main/main.c
|
295 |
6910 d 20 h |
palkovsky |
/SPARTAN/trunk/ |
Test that really tests SSE context switching. |
|
/SPARTAN/trunk/test/fpu/sse1 /SPARTAN/trunk/test/fpu/sse1/test.c
/SPARTAN/trunk/src/Makefile.config
|
293 |
6911 d 7 h |
palkovsky |
/SPARTAN/trunk/ |
Symbol table now contains static functions too.
NOTE: gcc heavily inlines, be aware of optimizations.
Removed excesive item from boot page tables. |
|
/SPARTAN/trunk/arch/amd64/Makefile.inc /SPARTAN/trunk/arch/amd64/src/boot/boot.S /SPARTAN/trunk/arch/ia32/Makefile.inc /SPARTAN/trunk/arch/ia64/Makefile.inc /SPARTAN/trunk/arch/mips/Makefile.inc /SPARTAN/trunk/arch/ppc/Makefile.inc /SPARTAN/trunk/src/Makefile /SPARTAN/trunk/tools/genmap.py
|
292 |
6911 d 8 h |
jermar |
/SPARTAN/trunk/ |
Add byteorder.h to support conversions between different endianesses.
Add native_le2host().
Use native_le2host() in get_symtab_entry(). |
|
/SPARTAN/trunk/arch/amd64/include/byteorder.h /SPARTAN/trunk/arch/ia32/include/byteorder.h /SPARTAN/trunk/arch/ia64/include/byteorder.h /SPARTAN/trunk/arch/mips/include/byteorder.h /SPARTAN/trunk/arch/ppc/include/byteorder.h
/SPARTAN/trunk/doc/requirements /SPARTAN/trunk/include/symtab.h /SPARTAN/trunk/src/debug/symtab.c
|
289 |
6911 d 11 h |
palkovsky |
/SPARTAN/trunk/ |
Added preprocessed linker script to AMD architecture, so that
the constants are all only in the header files. |
|
/SPARTAN/trunk/arch/amd64/_link.ld.in
/SPARTAN/trunk/arch/amd64/_link.ld
/SPARTAN/trunk/arch/amd64/Makefile.inc /SPARTAN/trunk/arch/amd64/include/mm/page.h /SPARTAN/trunk/arch/ia32/Makefile.inc /SPARTAN/trunk/arch/ia64/Makefile.inc /SPARTAN/trunk/arch/mips/Makefile.inc /SPARTAN/trunk/arch/ppc/Makefile.inc /SPARTAN/trunk/src/Makefile /SPARTAN/trunk/src/clean.amd64
|
288 |
6911 d 13 h |
jermar |
/SPARTAN/trunk/ |
Create tools/ directory.
Move helper scripts and tools out of src/ and arch/. |
|
/SPARTAN/trunk/tools /SPARTAN/trunk/tools/amd64 /SPARTAN/trunk/tools/amd64/gencontext.c /SPARTAN/trunk/tools/genmap.py
/SPARTAN/trunk/arch/amd64/src/gencontext.c /SPARTAN/trunk/src/debug/genmap.py
/SPARTAN/trunk/arch/amd64/src/boot/boot.S /SPARTAN/trunk/src/Makefile /SPARTAN/trunk/src/build.amd64 /SPARTAN/trunk/src/clean.amd64
|
284 |
6911 d 22 h |
palkovsky |
/SPARTAN/trunk/src/ |
|
|
/SPARTAN/trunk/src/Makefile.config
|
283 |
6911 d 22 h |
palkovsky |
/SPARTAN/trunk/ |
IA32 printf-double support migrated to amd64 |
|
/SPARTAN/trunk/arch/amd64/src/fmath.c
/SPARTAN/trunk/src/Makefile.config /SPARTAN/trunk/src/build.amd64 /SPARTAN/trunk/test/fpu/fpu1/test.c
|
282 |
6911 d 23 h |
palkovsky |
/SPARTAN/trunk/ |
Fixed gdtr naming issues after ia32 changes.
Fixed stack alignment on new thread to by multiple of 16,
we are now ABI-correct and we do not #GP on va_arg to boot.
Fixed bad exception register names reporting.
Fixed bad _hardcoded_load_addr, which caused allocation of kernel text
frames. |
|
/SPARTAN/trunk/arch/amd64/src/fpu_context.c
/SPARTAN/trunk/arch/amd64/include/fpu_context.h
/SPARTAN/trunk/arch/amd64/_link.ld /SPARTAN/trunk/arch/amd64/include/asm.h /SPARTAN/trunk/arch/amd64/include/context.h /SPARTAN/trunk/arch/amd64/include/cpu.h /SPARTAN/trunk/arch/amd64/include/cpuid.h /SPARTAN/trunk/arch/amd64/include/pm.h /SPARTAN/trunk/arch/amd64/src/amd64.c /SPARTAN/trunk/arch/amd64/src/boot/boot.S /SPARTAN/trunk/arch/amd64/src/cpu/cpu.c /SPARTAN/trunk/arch/amd64/src/interrupt.c /SPARTAN/trunk/arch/amd64/src/smp/ap.S /SPARTAN/trunk/arch/ia32/include/fpu_context.h /SPARTAN/trunk/arch/ia32/src/fpu_context.c /SPARTAN/trunk/src/build.amd64
|
276 |
6912 d 10 h |
cejka |
/SPARTAN/trunk/src/debug/ |
Printf "E" and "F" format fixed. |
|
/SPARTAN/trunk/src/debug/print.c
|
274 |
6912 d 12 h |
palkovsky |
/SPARTAN/trunk/src/ |
|
|
/SPARTAN/trunk/src/Makefile.config
|
273 |
6912 d 12 h |
palkovsky |
/SPARTAN/trunk/ |
Changes to make ia32 smp code not architecture dependent.
Changes to accomodate new gdtr loading scheme. |
|
/SPARTAN/trunk/arch/amd64/include/pm.h /SPARTAN/trunk/arch/amd64/src/boot/boot.S /SPARTAN/trunk/arch/ia32/include/smp/mps.h /SPARTAN/trunk/arch/ia32/src/smp/mps.c /SPARTAN/trunk/arch/ia32/src/smp/smp.c /SPARTAN/trunk/src/Makefile.config
|
270 |
6912 d 14 h |
palkovsky |
/SPARTAN/trunk/ |
Symbols now include filename |
|
/SPARTAN/trunk/include/symtab.h /SPARTAN/trunk/src/debug/genmap.py
|
268 |
6912 d 14 h |
palkovsky |
/SPARTAN/trunk/ |
Added symbol table lookup in exceptions.
This breaks ia64 & ppc architecture compiles. |
|
/SPARTAN/trunk/arch/amd64/include/boot/boot.h /SPARTAN/trunk/arch/amd64/src/smp /SPARTAN/trunk/include/symtab.h /SPARTAN/trunk/src/debug/genmap.py /SPARTAN/trunk/src/debug/symtab.c
/SPARTAN/trunk/arch/amd64/Makefile.inc /SPARTAN/trunk/arch/amd64/_link.ld /SPARTAN/trunk/arch/amd64/include/asm.h /SPARTAN/trunk/arch/amd64/src/dummy.s /SPARTAN/trunk/arch/amd64/src/interrupt.c /SPARTAN/trunk/arch/ia32/Makefile.inc /SPARTAN/trunk/arch/ia32/_link.ld /SPARTAN/trunk/arch/ia32/include/smp/apic.h /SPARTAN/trunk/arch/ia32/src/acpi/acpi.c /SPARTAN/trunk/arch/ia32/src/acpi/madt.c /SPARTAN/trunk/arch/ia32/src/interrupt.c /SPARTAN/trunk/arch/ia32/src/smp/apic.c /SPARTAN/trunk/arch/mips/Makefile.inc /SPARTAN/trunk/arch/mips/_link.ld /SPARTAN/trunk/arch/mips/src/mm/tlb.c /SPARTAN/trunk/src/Makefile /SPARTAN/trunk/src/build.amd64
|
266 |
6912 d 17 h |
cejka |
/SPARTAN/trunk/ |
Support for NaN and infinity in printf. |
|
/SPARTAN/trunk/arch/amd64/include/fmath.h /SPARTAN/trunk/arch/amd64/src/fmath.c /SPARTAN/trunk/arch/ia32/include/fmath.h /SPARTAN/trunk/arch/ia32/src/fmath.c /SPARTAN/trunk/arch/ia64/include/fmath.h /SPARTAN/trunk/arch/ia64/src/fmath.c /SPARTAN/trunk/arch/mips/include/fmath.h /SPARTAN/trunk/arch/mips/src/fmath.c /SPARTAN/trunk/arch/ppc/include/fmath.h /SPARTAN/trunk/arch/ppc/src/fmath.c /SPARTAN/trunk/src/debug/print.c /SPARTAN/trunk/test/print/print1/test.c
|
265 |
6912 d 18 h |
palkovsky |
/SPARTAN/trunk/ |
Added basic FPU context (not working).
Added CPU utilities from ia32 |
|
/SPARTAN/trunk/arch/amd64/Makefile.inc /SPARTAN/trunk/arch/amd64/src/amd64.c /SPARTAN/trunk/include/mm/heap.h /SPARTAN/trunk/src/build.amd64
|
264 |
6912 d 18 h |
cejka |
/SPARTAN/trunk/ |
E option in printf added. |
|
/SPARTAN/trunk/arch/ia32/src/boot/memmap.S /SPARTAN/trunk/include/print.h /SPARTAN/trunk/src/debug/print.c /SPARTAN/trunk/test/print/print1/test.c
|
259 |
6912 d 19 h |
palkovsky |
/SPARTAN/trunk/ |
Fixed asm problems in asm in atomic instructions. |
|
/SPARTAN/trunk/arch/amd64/include/atomic.h
/SPARTAN/trunk/arch/ia32/include/atomic.h /SPARTAN/trunk/src/build.amd64
|
258 |
6912 d 21 h |
palkovsky |
/SPARTAN/trunk/src/proc/ |
Fixed retyping, so that it compiles with gcc 4.0.2 |
|
/SPARTAN/trunk/src/proc/scheduler.c
|
257 |
6912 d 21 h |
palkovsky |
/SPARTAN/trunk/ |
Added basic FPU context (not working).
Added CPU utilities from ia32
Fixed bug in vm.c that wanted PTL to be mapped in bottom memory. |
|
/SPARTAN/trunk/arch/amd64/src/proc /SPARTAN/trunk/arch/amd64/src/proc/scheduler.c /SPARTAN/trunk/arch/amd64/src/userspace.c
/SPARTAN/trunk/arch/amd64/src/fpu_context.c
/SPARTAN/trunk/arch/amd64/Makefile.inc /SPARTAN/trunk/arch/amd64/include/asm.h /SPARTAN/trunk/arch/amd64/src/asm_utils.S /SPARTAN/trunk/arch/amd64/src/cpu/cpu.c /SPARTAN/trunk/arch/amd64/src/dummy.s /SPARTAN/trunk/arch/ia32/src/fpu_context.c /SPARTAN/trunk/src/build.amd64 /SPARTAN/trunk/src/mm/vm.c
|
251 |
6913 d 7 h |
palkovsky |
/SPARTAN/trunk/ |
Changes, that were needed to make it work on Bochs.
- We CAN use the NX bit in paging tables, but we have
to initialize the NXE bit in EFER register first. |
|
/SPARTAN/trunk/arch/amd64/src/cpu /SPARTAN/trunk/arch/amd64/src/cpu/cpu.c
/SPARTAN/trunk/arch/amd64/Makefile.inc /SPARTAN/trunk/arch/amd64/include/cpu.h /SPARTAN/trunk/arch/amd64/include/cpuid.h /SPARTAN/trunk/arch/amd64/include/mm/page.h /SPARTAN/trunk/arch/amd64/src/amd64.c /SPARTAN/trunk/arch/amd64/src/asm_utils.S /SPARTAN/trunk/arch/amd64/src/boot/boot.S /SPARTAN/trunk/arch/amd64/src/dummy.s /SPARTAN/trunk/include/cpu.h /SPARTAN/trunk/src/mm/page.c
|
248 |
6913 d 13 h |
jermar |
/SPARTAN/trunk/ |
Make atomic_dec() and atomic_inc() take (volatile int *) argument, not (volatile count_t *). |
|
/SPARTAN/trunk/arch/amd64/include/atomic.h /SPARTAN/trunk/arch/ia32/include/atomic.h /SPARTAN/trunk/src/proc/scheduler.c /SPARTAN/trunk/src/proc/thread.c
|
245 |
6913 d 14 h |
palkovsky |
/SPARTAN/trunk/ |
Use ia32 memmap.h/memmapash.h |
|
/SPARTAN/trunk/arch/amd64/include/boot/memmap.h /SPARTAN/trunk/arch/amd64/include/boot/memmapasm.h
/SPARTAN/trunk/src/build.amd64
|
243 |
6913 d 16 h |
palkovsky |
/SPARTAN/trunk/ |
Resolved mapping of e820 boot area, so that it can be accessed as
e820table from 32-bit mode and e820table_boot from real mode. |
|
/SPARTAN/trunk/arch/amd64/_link.ld /SPARTAN/trunk/arch/ia32/_link.ld /SPARTAN/trunk/arch/ia32/src/boot/memmap.S /SPARTAN/trunk/arch/ia32/src/mm/memory_init.c /SPARTAN/trunk/src/build.amd64
|
242 |
6913 d 17 h |
palkovsky |
/SPARTAN/trunk/ |
Fixed stack settings in boot.S in real mode.
Added ia32 memmap support.
Added cpuid support. |
|
/SPARTAN/trunk/arch/amd64/include/cpuid.h /SPARTAN/trunk/arch/mips/include/debug.h
/SPARTAN/trunk/arch/amd64/src/boot/memmap.S
/SPARTAN/trunk/arch/amd64/Makefile.inc /SPARTAN/trunk/arch/amd64/src/amd64.c /SPARTAN/trunk/arch/amd64/src/asm_utils.S /SPARTAN/trunk/arch/amd64/src/boot/boot.S /SPARTAN/trunk/arch/amd64/src/dummy.s /SPARTAN/trunk/src/build.amd64 /SPARTAN/trunk/src/main/main.c
|
241 |
6914 d 12 h |
palkovsky |
/SPARTAN/trunk/ |
Cleanups so that it compiles on ia-32 & amd-64 cleanly |
|
/SPARTAN/trunk/arch/amd64/include/atomic.h /SPARTAN/trunk/arch/amd64/src/fmath.c /SPARTAN/trunk/arch/ia32/include/atomic.h /SPARTAN/trunk/src/proc/scheduler.c /SPARTAN/trunk/src/proc/thread.c
|
239 |
6914 d 13 h |
vana |
/SPARTAN/trunk/ |
Missing ";" added |
|
/SPARTAN/trunk/arch/ia64/src/cpu/cpu.c /SPARTAN/trunk/arch/ia64/src/fmath.c /SPARTAN/trunk/src/time/timeout.c
|
238 |
6914 d 13 h |
vana |
/SPARTAN/trunk/ |
Register dump on IA-64 exceptions |
|
/SPARTAN/trunk/arch/ia64/include/asm.h /SPARTAN/trunk/arch/ia64/src/cpu/cpu.c /SPARTAN/trunk/arch/ia64/src/interrupt_handler.c /SPARTAN/trunk/arch/ia64/src/ivt.S /SPARTAN/trunk/src/main/main.c
|
236 |
6914 d 14 h |
jermar |
/SPARTAN/trunk/src/ |
Add missing header into kinit.c.
Do not use PA2KA() on dst_ptl0. |
|
/SPARTAN/trunk/src/main/kinit.c /SPARTAN/trunk/src/mm/vm.c
|
235 |
6914 d 14 h |
decky |
/SPARTAN/trunk/ |
load the kernel above 1 MB on IA-32 |
|
/SPARTAN/trunk/arch/ia32/_link.ld /SPARTAN/trunk/arch/ia32/include/boot/boot.h /SPARTAN/trunk/arch/ia32/src/boot/boot.S /SPARTAN/trunk/arch/ia32/src/drivers/i8042.c /SPARTAN/trunk/arch/ia32/src/ia32.c /SPARTAN/trunk/arch/ia32/src/mm/frame.c /SPARTAN/trunk/arch/ia32/src/mm/page.c /SPARTAN/trunk/src/main/main.c
|
228 |
6914 d 16 h |
cejka |
/SPARTAN/trunk/ |
Created fmath as basic tool for IEEE 754 floating point numbers.
Added option $F for printf for printing "double" type. |
|
/SPARTAN/trunk/arch/ia32/Makefile.inc /SPARTAN/trunk/include/print.h /SPARTAN/trunk/src/debug/print.c /SPARTAN/trunk/test/print/print1/test.c
|
227 |
6914 d 16 h |
jermar |
/SPARTAN/trunk/ |
Add couple of assertions CPU != NULL.
Change type of nrdy from int to count_t.
Rewrite halt() to avoid page fault when CPU == NULL. |
|
/SPARTAN/trunk/arch/mips/src/exception.c /SPARTAN/trunk/include/proc/scheduler.h /SPARTAN/trunk/src/lib/func.c /SPARTAN/trunk/src/mm/vm.c /SPARTAN/trunk/src/proc/scheduler.c /SPARTAN/trunk/src/proc/thread.c
|
226 |
6914 d 17 h |
palkovsky |
/SPARTAN/trunk/ |
Fixed typo in 'outb' instruction.
Paging basically working. |
|
/SPARTAN/trunk/arch/amd64/src/interrupt.c
/SPARTAN/trunk/arch/amd64/include/asm.h /SPARTAN/trunk/arch/amd64/include/mm/page.h /SPARTAN/trunk/arch/amd64/src/mm/page.c /SPARTAN/trunk/src/build.amd64 /SPARTAN/trunk/src/mm/page.c
|
223 |
6914 d 22 h |
jermar |
/SPARTAN/trunk/ |
Preemption work.
Instrument spinlock functions with preemption_disable() and preemption_enable() calls. |
|
/SPARTAN/trunk/include/synch/spinlock.h /SPARTAN/trunk/src/synch/spinlock.c
|
221 |
6914 d 22 h |
jermar |
/SPARTAN/trunk/ |
Preemption work.
Define PREEMPTION_DISABLED macro.
This macro determines the level of preemptivity (0 = preemption enabled, THE->preemption_disabled = no preemption inside spinlock, 1 = preemption disabled).
Reformulate preemption code in clock.c to consider PREEMPTION_DISABLED. |
|
/SPARTAN/trunk/include/arch.h /SPARTAN/trunk/src/time/clock.c
|
220 |
6914 d 23 h |
vana |
/SPARTAN/trunk/ |
Universal exception handler and all exceptions routine to call it added |
|
/SPARTAN/trunk/arch/ia64/src/interrupt_handler.c /SPARTAN/trunk/arch/ia64/src/ivt.S /SPARTAN/trunk/src/main/main.c
|
219 |
6915 d 6 h |
palkovsky |
/SPARTAN/trunk/ |
Fixed bad type in frame.c.
Amd64 prints banner. |
|
/SPARTAN/trunk/arch/amd64/src/mm /SPARTAN/trunk/arch/amd64/src/mm/page.c
/SPARTAN/trunk/arch/amd64/include/mm/memory_init.h
/SPARTAN/trunk/arch/amd64/Makefile.inc /SPARTAN/trunk/arch/amd64/include/asm.h /SPARTAN/trunk/arch/amd64/src/boot/memmap.S /SPARTAN/trunk/arch/amd64/src/dummy.s /SPARTAN/trunk/src/build.amd64 /SPARTAN/trunk/src/mm/frame.c
|
216 |
6915 d 7 h |
palkovsky |
/SPARTAN/trunk/ |
hardcoded_symbol fixed into linker script on amd64/ia32/mips architecture |
|
/SPARTAN/trunk/arch/amd64/Makefile.inc /SPARTAN/trunk/arch/amd64/_link.ld /SPARTAN/trunk/arch/amd64/include/asm.h /SPARTAN/trunk/arch/amd64/src/dummy.s /SPARTAN/trunk/arch/ia32/_link.ld /SPARTAN/trunk/arch/ia32/src/boot/boot.S /SPARTAN/trunk/arch/ia32/src/interrupt.c /SPARTAN/trunk/arch/mips/_link.ld /SPARTAN/trunk/src/build.amd64
|