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
778 6683 d 2 h palkovsky /kernel/trunk/ Fixed boot process not to call malloc when slab not initialized.
Added simics workaround.
 
/kernel/trunk/arch/amd64/Makefile.inc
/kernel/trunk/arch/ia32/Makefile.inc
/kernel/trunk/arch/ia32/src/mm/frame.c
/kernel/trunk/genarch/src/acpi/matd.c
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/generic/src/mm/slab.c
/kernel/trunk/kernel.config
703 6705 d 8 h jermar /kernel/trunk/ Memory management work.
- vm.* -> as.* (as like address space is, imho, more fitting)
- Don't do TLB shootdown on vm_install(). Some architectures only need to call tlb_invalidate_asid().
- Don't allocate all frames for as_area in as_area_create(), but let them be allocated on-demand by as_page_fault().
- Add high-level page fault handler as_page_fault().
- Add as_area_load_mapping().
 
/kernel/trunk/arch/amd64/include/mm/as.h
/kernel/trunk/arch/ia32/include/mm/as.h
/kernel/trunk/arch/ia64/include/mm/as.h
/kernel/trunk/arch/mips32/include/mm/as.h
/kernel/trunk/arch/mips32/src/mm/as.c
/kernel/trunk/arch/ppc32/include/mm/as.h
/kernel/trunk/arch/sparc64/include/mm/as.h
/kernel/trunk/generic/include/mm/as.h
/kernel/trunk/generic/src/mm/as.c
/kernel/trunk/arch/amd64/include/mm/vm.h
/kernel/trunk/arch/ia32/include/mm/vm.h
/kernel/trunk/arch/ia64/include/mm/vm.h
/kernel/trunk/arch/mips32/include/mm/vm.h
/kernel/trunk/arch/mips32/src/mm/vm.c
/kernel/trunk/arch/ppc32/include/mm/vm.h
/kernel/trunk/arch/sparc64/include/mm/vm.h
/kernel/trunk/generic/include/mm/vm.h
/kernel/trunk/generic/src/mm/vm.c
/kernel/trunk/Makefile
/kernel/trunk/arch/amd64/src/interrupt.c
/kernel/trunk/arch/amd64/src/userspace.c
/kernel/trunk/arch/ia32/src/interrupt.c
/kernel/trunk/arch/ia32/src/mm/frame.c
/kernel/trunk/arch/ia32/src/userspace.c
/kernel/trunk/arch/mips32/Makefile.inc
/kernel/trunk/arch/mips32/src/mips32.c
/kernel/trunk/arch/mips32/src/mm/tlb.c
/kernel/trunk/doc/mm
/kernel/trunk/generic/include/arch.h
/kernel/trunk/generic/include/proc/task.h
/kernel/trunk/generic/include/typedefs.h
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/mm/frame.c
/kernel/trunk/generic/src/mm/page.c
/kernel/trunk/generic/src/proc/scheduler.c
/kernel/trunk/generic/src/proc/task.c
/kernel/trunk/generic/src/proc/the.c
693 6710 d 3 h decky /kernel/trunk/arch/ia32/ simplify and cleanup ia32 boot process, remove obsolete stuff  
/kernel/trunk/arch/ia32/_link.ld.in
/kernel/trunk/arch/ia32/include/boot/boot.h
/kernel/trunk/arch/ia32/include/pm.h
/kernel/trunk/arch/ia32/src/boot/boot.S
/kernel/trunk/arch/ia32/src/mm/frame.c
/kernel/trunk/arch/ia32/src/pm.c
/kernel/trunk/arch/ia32/src/smp/ap.S
/kernel/trunk/arch/ia32/src/smp/apic.c
/kernel/trunk/arch/ia32/src/smp/smp.c
625 6734 d 5 h palkovsky /kernel/trunk/ We are now almost -Wall clean.
- redefined atomic_t
- deleted many, many unused variables
- some minor code cleanups found using compiler warning.
 
/kernel/trunk/arch/amd64/include/asm.h
/kernel/trunk/arch/amd64/src/cpu/cpu.c
/kernel/trunk/arch/ia32/include/atomic.h
/kernel/trunk/arch/ia32/src/fmath.c
/kernel/trunk/arch/ia32/src/mm/frame.c
/kernel/trunk/arch/ia32/src/smp/smp.c
/kernel/trunk/arch/ia64/include/atomic.h
/kernel/trunk/arch/mips32/include/atomic.h
/kernel/trunk/arch/mips32/src/drivers/arc.c
/kernel/trunk/arch/mips32/src/drivers/serial.c
/kernel/trunk/arch/ppc32/include/atomic.h
/kernel/trunk/arch/sparc64/include/atomic.h
/kernel/trunk/generic/include/cpu.h
/kernel/trunk/generic/include/debug.h
/kernel/trunk/generic/include/synch/spinlock.h
/kernel/trunk/generic/src/console/cmd.c
/kernel/trunk/generic/src/console/kconsole.c
/kernel/trunk/generic/src/debug/symtab.c
/kernel/trunk/generic/src/main/kinit.c
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/mm/vm.c
/kernel/trunk/generic/src/proc/scheduler.c
/kernel/trunk/generic/src/proc/thread.c
/kernel/trunk/generic/src/synch/rwlock.c
/kernel/trunk/generic/src/synch/spinlock.c
/kernel/trunk/test/synch/rwlock4/test.c
564 6741 d 22 h jermar /kernel/trunk/ Send in some improvements.  
/kernel/trunk/arch/ia32/src/mm/frame.c
/kernel/trunk/arch/ia64/include/context.h
/kernel/trunk/arch/sparc64/include/context.h
/kernel/trunk/generic/include/align.h
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/src/main/main.c
/kernel/trunk/generic/src/mm/frame.c
540 6743 d 22 h jermar /kernel/trunk/arch/ Map all available frames of memory on ia32 and amd64 (ticket #10).  
/kernel/trunk/arch/amd64/include/mm/frame.h
/kernel/trunk/arch/amd64/src/mm/page.c
/kernel/trunk/arch/ia32/include/boot/memmap.h
/kernel/trunk/arch/ia32/include/mm/frame.h
/kernel/trunk/arch/ia32/src/mm/frame.c
/kernel/trunk/arch/ia32/src/mm/page.c
537 6744 d 4 h jermar /kernel/trunk/ Buddy system cleanup and fixes.
- missing use of KA2PA in frame_init
- truncating black list addresses to frame boundaries
- removal of left-over obsolete structures
- fixing some comments
 
/kernel/trunk/arch/ia32/src/mm/frame.c
/kernel/trunk/arch/ia64/include/mm/page.h
/kernel/trunk/generic/include/mm/frame.h
/kernel/trunk/generic/src/mm/frame.c
534 6745 d 1 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
/kernel
/SPARTAN
533 6745 d 1 h bondari /SPARTAN/trunk/ Buddy allocator for physical memory complete implementation.
Tested on IA32, AMD64, MIPS32. RWLock Test #5 is not passed.
NOTE: Other architectures could be broken (but should not be)
 
/SPARTAN/trunk/Makefile.config
/SPARTAN/trunk/arch/amd64/src/mm/page.c
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
/SPARTAN/trunk/arch/ia32/src/mm/page.c
/SPARTAN/trunk/arch/ia64/src/mm/frame.c
/SPARTAN/trunk/arch/mips32/src/mm/frame.c
/SPARTAN/trunk/arch/mips32/src/mm/page.c
/SPARTAN/trunk/arch/ppc32/src/mm/frame.c
/SPARTAN/trunk/generic/include/mm/buddy.h
/SPARTAN/trunk/generic/include/mm/frame.h
/SPARTAN/trunk/generic/include/typedefs.h
/SPARTAN/trunk/generic/src/cpu/cpu.c
/SPARTAN/trunk/generic/src/mm/buddy.c
/SPARTAN/trunk/generic/src/mm/frame.c
/SPARTAN/trunk/generic/src/mm/page.c
/SPARTAN/trunk/generic/src/mm/vm.c
/SPARTAN/trunk/generic/src/proc/thread.c
532 6745 d 2 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
/SPARTAN
/kernel
501 6757 d 6 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
/kernel
/SPARTAN
371 6818 d 22 h jermar /SPARTAN/trunk/arch/ia32/src/ Complete map_kernel() in boot.S to map the entire 4G space.

Change IA-32 frame_arch_init() to add zone with lower base addresses first.
 
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
368 6819 d 7 h jermar /SPARTAN/trunk/ Physical memory management work.
New frame allocator.
Some architectures need to have bigger heap.
 
/SPARTAN/trunk/arch/ia64/src/mm
/SPARTAN/trunk/arch/ia64/src/mm/frame.c
/SPARTAN/trunk/arch/amd64/src/mm/page.c
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
/SPARTAN/trunk/arch/ia32/src/mm/page.c
/SPARTAN/trunk/arch/ia32/src/smp/mps.c
/SPARTAN/trunk/arch/ia64/Makefile.inc
/SPARTAN/trunk/arch/ia64/src/dummy.s
/SPARTAN/trunk/arch/mips32/src/mm/frame.c
/SPARTAN/trunk/arch/ppc32/src/mm/frame.c
/SPARTAN/trunk/include/mm/frame.h
/SPARTAN/trunk/src/mm/frame.c
267 6837 d 5 h decky /SPARTAN/trunk/arch/ia32/ proper way of initializing GDT during boot on IA-32, fixes the nasty hack
SMP might be still broken
 
/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/ia32.c
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
/SPARTAN/trunk/arch/ia32/src/pm.c
/SPARTAN/trunk/arch/ia32/src/smp/ap.S
247 6838 d 4 h jermar /SPARTAN/trunk/arch/ia32/src/mm/ Fix nasty bug in arch/mm/frame.c.
frame_region_not_free() takes address as its second argument, not size.
 
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
246 6838 d 4 h decky /SPARTAN/trunk/arch/ia32/src/mm/ make IA-32 UP work again (nasty hack)  
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
235 6839 d 4 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
187 6841 d 8 h cejka /SPARTAN/trunk/ Licence to print1/test.c added.
New function for printing memory map at ia32.
 
/SPARTAN/trunk/arch/ia32/include/mm/memory_init.h
/SPARTAN/trunk/arch/ia32/src/ia32.c
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
/SPARTAN/trunk/arch/ia32/src/mm/memory_init.c
/SPARTAN/trunk/test/print/print1/test.c
182 6841 d 12 h cejka /SPARTAN/trunk/ Test for printf added.  
/SPARTAN/trunk/test/print
/SPARTAN/trunk/test/print/test.c
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
/SPARTAN/trunk/src/Makefile.config
177 6842 d 9 h jermar /SPARTAN/trunk/ Add some comments to IA-32 src/boot/boot.S and src/smp.S.

Make the boot stack start on page boundary.
This is required by get_stack_base().

Define 'THE' macro.

Implement preemption_disable() and preemption_enable().

Add memory barrier macros.
IA-32 macros need support for older processors.
Non IA-32 macros are dummy.

Reduction of many #include paths.
 
/SPARTAN/trunk/arch/amd64/include/barrier.h
/SPARTAN/trunk/arch/ia32/include/asm.h
/SPARTAN/trunk/arch/ia32/include/barrier.h
/SPARTAN/trunk/arch/ia32/src/boot/boot.S
/SPARTAN/trunk/arch/ia32/src/mm/frame.c
/SPARTAN/trunk/arch/ia32/src/smp/ap.S
/SPARTAN/trunk/arch/ia64/include/barrier.h
/SPARTAN/trunk/arch/mips/include/barrier.h
/SPARTAN/trunk/arch/mips/include/cpu.h
/SPARTAN/trunk/arch/mips/include/mm/page.h
/SPARTAN/trunk/arch/ppc/include/barrier.h
/SPARTAN/trunk/include/arch.h
/SPARTAN/trunk/include/cpu.h
/SPARTAN/trunk/include/proc/task.h
/SPARTAN/trunk/include/proc/thread.h
/SPARTAN/trunk/src/main/main.c
/SPARTAN/trunk/src/preempt/preemption.c

Show All