Subversion Repositories HelenOS

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
684 6726 d 10 h jermar /kernel/trunk/ Memory management work.
Move generic 4-level page table interface to genarch
and enable architectures to use different virtual memory
mechanisms (e.g. page hash tables).
Start page hash table support.
Switch ia64 and sparc64 to page hash tables.
Other architectures keep on using 4-level page table interface.
 
/kernel/trunk/arch/ia64/src/mm/page.c
/kernel/trunk/genarch/include/mm
/kernel/trunk/genarch/include/mm/page_ht.h
/kernel/trunk/genarch/include/mm/page_pt.h
/kernel/trunk/genarch/src/mm
/kernel/trunk/genarch/src/mm/page_ht.c
/kernel/trunk/genarch/src/mm/page_pt.c
/kernel/trunk/arch/amd64/Makefile.inc
/kernel/trunk/arch/amd64/src/mm/page.c
/kernel/trunk/arch/ia32/Makefile.inc
/kernel/trunk/arch/ia32/src/mm/page.c
/kernel/trunk/arch/ia64/Makefile.inc
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/arch/mips32/Makefile.inc
/kernel/trunk/arch/mips32/src/mm/page.c
/kernel/trunk/arch/ppc32/Makefile.inc
/kernel/trunk/arch/ppc32/src/mm/page.c
/kernel/trunk/arch/sparc64/Makefile.inc
/kernel/trunk/arch/sparc64/src/mm/page.c
/kernel/trunk/genarch/Makefile.inc
/kernel/trunk/generic/include/mm/page.h
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/mm/page.c
/kernel/trunk/generic/src/mm/vm.c
674 6730 d 13 h cejka /kernel/trunk/ Support for printing float numbers in kernel removed.  
/kernel/trunk/arch/amd64/include/fmath.h
/kernel/trunk/arch/amd64/src/fmath.c
/kernel/trunk/arch/ia32/include/fmath.h
/kernel/trunk/arch/ia32/src/fmath.c
/kernel/trunk/arch/ia64/include/fmath.h
/kernel/trunk/arch/ia64/src/fmath.c
/kernel/trunk/arch/mips32/include/fmath.h
/kernel/trunk/arch/mips32/src/fmath.c
/kernel/trunk/arch/ppc32/include/fmath.h
/kernel/trunk/arch/ppc32/src/fmath.c
/kernel/trunk/arch/amd64/Makefile.inc
/kernel/trunk/arch/ia32/Makefile.inc
/kernel/trunk/arch/ia64/Makefile.inc
/kernel/trunk/arch/mips32/Makefile.inc
/kernel/trunk/arch/ppc32/Makefile.inc
/kernel/trunk/generic/src/debug/print.c
/kernel/trunk/test/print/print1/test.c
568 6757 d 9 h palkovsky /kernel/trunk/ Configuration tweaks, now supports both CNF and DNF in config.file.  
/kernel/trunk/Makefile
/kernel/trunk/arch/amd64/Makefile.inc
/kernel/trunk/arch/ia32/Makefile.inc
/kernel/trunk/arch/mips32/Makefile.inc
/kernel/trunk/kernel.config
/kernel/trunk/tools/config.py
534 6761 d 6 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
/kernel
/SPARTAN
532 6761 d 6 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
/SPARTAN
/kernel
501 6773 d 10 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
/kernel
/SPARTAN
486 6781 d 3 h jermar /SPARTAN/trunk/ Revert to -O3 for all architectures as the mips32 bug got fixed.  
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/mips32/Makefile.inc
/SPARTAN/trunk/arch/ppc32/Makefile.inc
/SPARTAN/trunk/arch/sparc64/Makefile.inc
483 6781 d 6 h jermar /SPARTAN/trunk/ For now, each architecture must use its own -O switch (-O2 doesn't work for ia64, -O3 doesn't work for mips32).

New mips32 atomic_add() function.

Cleanup.
 
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/Makefile.config
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/mips32/Makefile.inc
/SPARTAN/trunk/arch/mips32/include/atomic.h
/SPARTAN/trunk/arch/mips32/include/cpu.h
/SPARTAN/trunk/arch/mips32/src/interrupt.c
/SPARTAN/trunk/arch/ppc32/Makefile.inc
/SPARTAN/trunk/arch/sparc64/Makefile.inc
/SPARTAN/trunk/generic/include/arch.h
/SPARTAN/trunk/generic/include/config.h
/SPARTAN/trunk/generic/include/cpu.h
/SPARTAN/trunk/generic/include/proc/scheduler.h
/SPARTAN/trunk/generic/include/synch/rwlock.h
/SPARTAN/trunk/generic/include/typedefs.h
/SPARTAN/trunk/generic/src/proc/scheduler.c
/SPARTAN/trunk/test/fpu/fpu1/test.c
/SPARTAN/trunk/test/fpu/mips1/test.c
/SPARTAN/trunk/test/fpu/sse1/test.c
/SPARTAN/trunk/test/synch/rwlock5/test.c
460 6787 d 12 h decky /SPARTAN/trunk/ some fancy stuff  
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/Makefile.config
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/generic/src/main/main.c
458 6787 d 13 h decky /SPARTAN/trunk/ make configuration variables usage consistent  
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/src/amd64.c
/SPARTAN/trunk/arch/amd64/src/interrupt.c
/SPARTAN/trunk/arch/amd64/src/smp/ap.S
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia32/include/atomic.h
/SPARTAN/trunk/arch/ia32/src/atomic.S
/SPARTAN/trunk/arch/ia32/src/ia32.c
/SPARTAN/trunk/arch/ia32/src/interrupt.c
/SPARTAN/trunk/arch/ia32/src/smp/ap.S
/SPARTAN/trunk/arch/ia32/src/smp/apic.c
/SPARTAN/trunk/arch/ia32/src/smp/ipi.c
/SPARTAN/trunk/arch/ia32/src/smp/mps.c
/SPARTAN/trunk/arch/ia32/src/smp/smp.c
/SPARTAN/trunk/arch/mips32/Makefile.inc
/SPARTAN/trunk/arch/mips32/src/exception.c
/SPARTAN/trunk/genarch/src/acpi/matd.c
/SPARTAN/trunk/generic/include/cpu.h
/SPARTAN/trunk/generic/include/mm/tlb.h
/SPARTAN/trunk/generic/include/smp/ipi.h
/SPARTAN/trunk/generic/include/smp/smp.h
/SPARTAN/trunk/generic/include/synch/spinlock.h
/SPARTAN/trunk/generic/src/cpu/cpu.c
/SPARTAN/trunk/generic/src/main/kinit.c
/SPARTAN/trunk/generic/src/main/main.c
/SPARTAN/trunk/generic/src/mm/tlb.c
/SPARTAN/trunk/generic/src/proc/scheduler.c
/SPARTAN/trunk/generic/src/smp/ipi.c
/SPARTAN/trunk/generic/src/synch/spinlock.c
457 6787 d 13 h decky /SPARTAN/trunk/ new build system almost finished  
/SPARTAN/trunk/arch/amd64/include/atomic.h
/SPARTAN/trunk/arch/amd64/include/barrier.h
/SPARTAN/trunk/arch/amd64/include/bios
/SPARTAN/trunk/arch/amd64/include/boot/memmap.h
/SPARTAN/trunk/arch/amd64/include/boot/memmapasm.h
/SPARTAN/trunk/arch/amd64/include/context_offset.h
/SPARTAN/trunk/arch/amd64/include/ega.h
/SPARTAN/trunk/arch/amd64/include/fpu_context.h
/SPARTAN/trunk/arch/amd64/include/i8042.h
/SPARTAN/trunk/arch/amd64/include/i8254.h
/SPARTAN/trunk/arch/amd64/include/i8259.h
/SPARTAN/trunk/arch/amd64/include/interrupt.h
/SPARTAN/trunk/arch/amd64/include/mm/memory_init.h
/SPARTAN/trunk/arch/amd64/include/smp
/SPARTAN/trunk/arch/amd64/src/bios
/SPARTAN/trunk/arch/amd64/src/boot/memmap.S
/SPARTAN/trunk/arch/amd64/src/drivers
/SPARTAN/trunk/arch/amd64/src/fmath.c
/SPARTAN/trunk/arch/amd64/src/mm/frame.c
/SPARTAN/trunk/arch/amd64/src/mm/memory_init.c
/SPARTAN/trunk/arch/amd64/src/mm/tlb.c
/SPARTAN/trunk/arch/amd64/src/smp/apic.c
/SPARTAN/trunk/arch/amd64/src/smp/ipi.c
/SPARTAN/trunk/arch/amd64/src/smp/mps.c
/SPARTAN/trunk/arch/amd64/src/smp/smp.c
/SPARTAN/trunk/arch/mips32/include/context_offset.h
/SPARTAN/trunk/build.amd64
/SPARTAN/trunk/build.mips32
/SPARTAN/trunk/clean.amd64
/SPARTAN/trunk/clean.mips32
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/_link.ld.in
/SPARTAN/trunk/arch/amd64/boot/Makefile
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia32/_link.ld.in
/SPARTAN/trunk/arch/ia32/include/barrier.h
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/ia64/_link.ld.in
/SPARTAN/trunk/arch/mips32/Makefile.inc
/SPARTAN/trunk/arch/mips32/_link.ld.in
/SPARTAN/trunk/arch/mips32/boot/Makefile
/SPARTAN/trunk/arch/mips32/boot/boot.S
/SPARTAN/trunk/arch/ppc32/Makefile.inc
/SPARTAN/trunk/arch/ppc32/_link.ld.in
/SPARTAN/trunk/arch/sparc64/Makefile.inc
/SPARTAN/trunk/arch/sparc64/_link.ld.in
/SPARTAN/trunk/build.ia32
455 6788 d 1 h decky /SPARTAN/trunk/ new build system upgrade
finished work for IA-32, IA-64, PPC-32, SPARC-64
 
/SPARTAN/trunk/arch/ia64/_link.ld.in
/SPARTAN/trunk/arch/ppc32/_link.ld.in
/SPARTAN/trunk/arch/sparc64/_link.ld.in
/SPARTAN/trunk/build.ia64
/SPARTAN/trunk/build.ppc32
/SPARTAN/trunk/build.sparc64
/SPARTAN/trunk/clean.ia32
/SPARTAN/trunk/clean.ia64
/SPARTAN/trunk/clean.ppc32
/SPARTAN/trunk/clean.sparc64
/SPARTAN/trunk/arch/ia64/_link.ld
/SPARTAN/trunk/arch/ppc32/_link.ld
/SPARTAN/trunk/arch/sparc64/_link.ld
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia32/boot/Makefile
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/ia64/boot/Makefile
/SPARTAN/trunk/arch/mips32/Makefile.inc
/SPARTAN/trunk/arch/mips32/boot/Makefile
/SPARTAN/trunk/arch/ppc32/Makefile.inc
/SPARTAN/trunk/arch/ppc32/boot/Makefile
/SPARTAN/trunk/arch/sparc64/Makefile.inc
/SPARTAN/trunk/arch/sparc64/boot/Makefile
/SPARTAN/trunk/build.ia32
/SPARTAN/trunk/clean
430 6794 d 3 h jermar /SPARTAN/trunk/ Move src/ and include/ to generic.  
/SPARTAN/trunk/generic
/SPARTAN/trunk/generic/include
/SPARTAN/trunk/generic/src
/SPARTAN/trunk/include
/SPARTAN/trunk/src
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/mips32/Makefile.inc
/SPARTAN/trunk/arch/mips32/boot/Makefile
/SPARTAN/trunk/arch/ppc32/Makefile.inc
/SPARTAN/trunk/arch/sparc64/Makefile.inc
/SPARTAN/trunk/genarch/Makefile.inc
/SPARTAN/trunk/generic/src/main/kinit.c
422 6800 d 16 h jermar /SPARTAN/trunk/ Move ACPI code to genarch.
Enable it for ia32, amd64 and ia64.
For now, ia64 support is commented out.
 
/SPARTAN/trunk/genarch/include/firmware/acpi
/SPARTAN/trunk/genarch/include/firmware/acpi/acpi.h
/SPARTAN/trunk/genarch/include/firmware/acpi/madt.h
/SPARTAN/trunk/genarch/src/firmware/acpi
/SPARTAN/trunk/genarch/src/firmware/acpi/acpi.c
/SPARTAN/trunk/genarch/src/firmware/acpi/madt.c
/SPARTAN/trunk/arch/ia32/include/acpi
/SPARTAN/trunk/arch/ia32/src/acpi
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/src/amd64.c
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia32/src/ia32.c
/SPARTAN/trunk/arch/ia32/src/smp/smp.c
/SPARTAN/trunk/build.amd64
/SPARTAN/trunk/genarch/Makefile.inc
419 6802 d 5 h bondari /SPARTAN/trunk/arch/ Memory inline functions for AMD64.
memcmp and memcpy are redefined according to norma
 
/SPARTAN/trunk/arch/amd64/src/supplib.c
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/include/memstr.h
/SPARTAN/trunk/arch/ia32/include/memstr.h
376 6831 d 8 h jermar /SPARTAN/trunk/ Move kernel build files one level up the directory tree.
Fix paths in your testing environment!
 
/SPARTAN/trunk/Makefile
/SPARTAN/trunk/Makefile.config
/SPARTAN/trunk/build.amd64
/SPARTAN/trunk/build.ia32
/SPARTAN/trunk/build.ia64
/SPARTAN/trunk/build.mips32
/SPARTAN/trunk/build.ppc32
/SPARTAN/trunk/clean.amd64
/SPARTAN/trunk/clean.ia32
/SPARTAN/trunk/clean.ia64
/SPARTAN/trunk/clean.mips32
/SPARTAN/trunk/clean.ppc32
/SPARTAN/trunk/src/Makefile
/SPARTAN/trunk/src/Makefile.config
/SPARTAN/trunk/src/build.amd64
/SPARTAN/trunk/src/build.ia32
/SPARTAN/trunk/src/build.ia64
/SPARTAN/trunk/src/build.mips32
/SPARTAN/trunk/src/build.ppc32
/SPARTAN/trunk/src/clean.amd64
/SPARTAN/trunk/src/clean.ia32
/SPARTAN/trunk/src/clean.ia64
/SPARTAN/trunk/src/clean.mips32
/SPARTAN/trunk/src/clean.ppc32
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/boot/Makefile
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia32/boot/Makefile
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/ia64/boot/Makefile
/SPARTAN/trunk/arch/mips32/Makefile.inc
/SPARTAN/trunk/arch/mips32/boot/Makefile
/SPARTAN/trunk/arch/ppc32/Makefile.inc
/SPARTAN/trunk/arch/ppc32/boot/Makefile
/SPARTAN/trunk/contrib/conf/SPMIPS.simics
/SPARTAN/trunk/contrib/conf/dot.bochsrc
/SPARTAN/trunk/contrib/conf/ski.conf
326 6847 d 0 h palkovsky /SPARTAN/trunk/ Cleanup of makefiles to have common options in one main makefile.

Add simple build process for different simulators for MIPS.
Added FPU context & lazy FPU context switching to MIPS.
Cleanup of MIPS linker script.
Moved MIPS kernel above 1MB. Not tested on real machine yet, but it might help.

There is something broken with gcc inlined memcpy (either simulator or gcc), it is disabled on BigEndian mips now.
 
/SPARTAN/trunk/arch/mips/_link.ld.in
/SPARTAN/trunk/test/fpu/mips1
/SPARTAN/trunk/test/fpu/mips1/test.c
/SPARTAN/trunk/arch/mips/_link.ld
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/src/fpu_context.c
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/mips/Makefile.inc
/SPARTAN/trunk/arch/mips/boot/boot.S
/SPARTAN/trunk/arch/mips/include/asm.h
/SPARTAN/trunk/arch/mips/include/asm/boot.h
/SPARTAN/trunk/arch/mips/include/byteorder.h
/SPARTAN/trunk/arch/mips/include/cp0.h
/SPARTAN/trunk/arch/mips/include/exception.h
/SPARTAN/trunk/arch/mips/include/fpu_context.h
/SPARTAN/trunk/arch/mips/include/thread.h
/SPARTAN/trunk/arch/mips/src/asm.S
/SPARTAN/trunk/arch/mips/src/console.c
/SPARTAN/trunk/arch/mips/src/dummy.S
/SPARTAN/trunk/arch/mips/src/exception.c
/SPARTAN/trunk/arch/mips/src/fpu_context.c
/SPARTAN/trunk/arch/mips/src/mips.c
/SPARTAN/trunk/arch/mips/src/mm/frame.c
/SPARTAN/trunk/arch/mips/src/panic.S
/SPARTAN/trunk/arch/mips/src/start.S
/SPARTAN/trunk/arch/ppc/Makefile.inc
/SPARTAN/trunk/contrib/conf/msim.conf
/SPARTAN/trunk/src/Makefile
/SPARTAN/trunk/src/build.mips
/SPARTAN/trunk/src/clean.mips
309 6850 d 15 h palkovsky /SPARTAN/trunk/ Added architecture independent hooks for fpu lazy context switching.
It is enabled by defining FPU_LAZY
 
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/include/cpu.h
/SPARTAN/trunk/arch/amd64/src/cpu/cpu.c
/SPARTAN/trunk/arch/amd64/src/fpu_context.c
/SPARTAN/trunk/arch/amd64/src/interrupt.c
/SPARTAN/trunk/arch/ia32/Makefile.inc
/SPARTAN/trunk/arch/ia32/Makefile.inc.cross
/SPARTAN/trunk/arch/ia32/include/cpu.h
/SPARTAN/trunk/arch/ia32/include/fpu_context.h
/SPARTAN/trunk/arch/ia32/src/cpu/cpu.c
/SPARTAN/trunk/arch/ia32/src/fpu_context.c
/SPARTAN/trunk/arch/ia32/src/interrupt.c
/SPARTAN/trunk/arch/ia64/src/dummy.s
/SPARTAN/trunk/arch/ia64/src/fpu_context.c
/SPARTAN/trunk/arch/mips/src/dummy.s
/SPARTAN/trunk/arch/mips/src/fpu_context.c
/SPARTAN/trunk/arch/ppc/src/dummy.s
/SPARTAN/trunk/arch/ppc/src/fpu_context.c
/SPARTAN/trunk/include/fpu_context.h
/SPARTAN/trunk/include/proc/scheduler.h
/SPARTAN/trunk/src/proc/scheduler.c
301 6851 d 12 h palkovsky /SPARTAN/trunk/arch/ Backported amd64 build process back to ia32.  
/SPARTAN/trunk/arch/ia32/_link.ld.in
/SPARTAN/trunk/arch/ia32/_link.ld
/SPARTAN/trunk/arch/amd64/Makefile.inc
/SPARTAN/trunk/arch/amd64/_link.ld.in
/SPARTAN/trunk/arch/ia32/Makefile.inc
293 6852 d 2 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

Show All