Subversion Repositories HelenOS-historic

Rev

Go to most recent revision | Hide changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff Changes
295 6909 d 2 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 6909 d 13 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 6909 d 13 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 6909 d 17 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 6909 d 19 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 6910 d 4 h palkovsky /SPARTAN/trunk/src/  
/SPARTAN/trunk/src/Makefile.config
283 6910 d 4 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 6910 d 4 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 6910 d 16 h cejka /SPARTAN/trunk/src/debug/ Printf "E" and "F" format fixed.  
/SPARTAN/trunk/src/debug/print.c
274 6910 d 18 h palkovsky /SPARTAN/trunk/src/  
/SPARTAN/trunk/src/Makefile.config
273 6910 d 18 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 6910 d 19 h palkovsky /SPARTAN/trunk/ Symbols now include filename  
/SPARTAN/trunk/include/symtab.h
/SPARTAN/trunk/src/debug/genmap.py
268 6910 d 20 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 6910 d 23 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 6911 d 0 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 6911 d 0 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 6911 d 1 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 6911 d 3 h palkovsky /SPARTAN/trunk/src/proc/ Fixed retyping, so that it compiles with gcc 4.0.2  
/SPARTAN/trunk/src/proc/scheduler.c
257 6911 d 3 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 6911 d 12 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 6911 d 19 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 6911 d 20 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 6911 d 22 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 6911 d 23 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 6912 d 17 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 6912 d 19 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 6912 d 19 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 6912 d 20 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 6912 d 20 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 6912 d 22 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 6912 d 22 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 6912 d 22 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 6913 d 3 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 6913 d 4 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 6913 d 4 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 6913 d 12 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 6913 d 13 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
214 6913 d 15 h vana /SPARTAN/trunk/src/  
/SPARTAN/trunk/src/Makefile.config
/SPARTAN/trunk/src/proc/scheduler.c
213 6913 d 15 h jermar /SPARTAN/trunk/ Add some comments.  
/SPARTAN/trunk/arch/mips/src/exception.c
/SPARTAN/trunk/src/proc/scheduler.c
/SPARTAN/trunk/src/proc/thread.c
212 6913 d 15 h vana /SPARTAN/trunk/ Basic exception support added for ia64 arch ......  
/SPARTAN/trunk/arch/ia64/src/cpu
/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/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/ia64/src/dummy.s
/SPARTAN/trunk/arch/mips/src/putchar.c
/SPARTAN/trunk/src/Makefile.config
/SPARTAN/trunk/src/main/main.c
/SPARTAN/trunk/src/proc/scheduler.c