Subversion Repositories HelenOS

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
4647 5642 d 21 h jermar /branches/arm/ Branch out a new arm branch.  
3973 5781 d 4 h decky /trunk/kernel/ kernel memory management revisited (phase 2): map physical memory according to zones
- ia32: register reserved and ACPI zones
- pareas are now used only for mapping of present physical memory (hw_area() is gone)
- firmware zones and physical addresses outside any zones are allowed to be mapped generally
- fix nasty antient bug in zones_insert_zone()
 
3908 5791 d 21 h decky /trunk/ overhaul pareas: use one single physical area for the physical address space not belonging to physical memory  
3776 5835 d 2 h jermar /trunk/kernel/arch/ia64/src/mm/ Do not leave last_frame uninitialized on ia64.  
3765 5839 d 2 h jermar /trunk/kernel/arch/ia64/src/mm/ Cleanup ia64's frame.c.  
3763 5839 d 2 h jermar /trunk/ Remove most of the ia64 dead / commented out code.  
3616 5877 d 23 h vana /trunk/ IA64 correctly find CPU wakeup vector from SAL & EFI memory map support  
3578 5889 d 8 h vana /trunk/ Alfa of SMP support on IA64  
2726 6165 d 5 h vana /trunk/ Basic IA64 boot and kernel suport for real machines  
2725 6168 d 1 h decky /trunk/kernel/ remove config.memory_size, get_memory_size() and memory_init.{c|d}
the amount of available memory can be calculated from the sizes of the zones
add FRAMES2SIZE, SIZE2KB and SIZE2MB functions/macros (code readability)
 
2071 6552 d 19 h jermar /trunk/ (c) versus (C)  
1888 6677 d 22 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 6742 d 21 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1702 6771 d 1 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
900 6875 d 22 h jermar /kernel/trunk/arch/ia64/ ia64 work.
Proper TLB fault handlers' headers and prototypes.
PFN 0 needs no longer be marked unavailable to frame allocator.
 
823 6895 d 16 h jermar /kernel/trunk/ Reimplement ASID stealing logic.
This time, hopefully, with correct synchronization.
 
816 6896 d 1 h jermar /kernel/trunk/ Fix mapping1 test.

Cleanup.
 
815 6896 d 2 h jermar /kernel/trunk/ Fix sparc64 and ia64 to work with the changed frame allocator.

Fix ppc32 to at least compile.
 
813 6896 d 15 h jermar /kernel/trunk/ Change ia64 kernel image to link and load at 0x100000 where
it (or its heap or stack) won't mess up with the ROM region.

Blacklist ia64 frame 0 from frame allocator so that 0 won't be
returned to malloc and friends. This can be reenabled again
once the kernel is not identity mapped.
 
758 6902 d 16 h jermar /kernel/trunk/arch/ sparc64 bugfix.
When disabling IMMU and DMMU the kernel has to perform synchronization operation
(e.g flush %r or membar #Sync instruction). There is no guarantee that the address
contained in %r is in DTLB and therefore the flush instruction can fault. Normally
this would be recognized and fixed by the OpenFirmware Fast Data MMU fault handler.
However, this handler lives in virtually mapped memory and an attempt to execute
there while the MMUs are disabled would result in a nested trap leading to error state.
Replacing flush %r instruction with membar #Sync, wich is sufficient in this case,
fixes this problem.
 
757 6902 d 19 h jermar /kernel/trunk/ Blacklist addresses between 0xa0000 and 0xfffff on ia64 for frame allocator.
This area contains VGA text frame buffer and should be avoided.
falloc2 test now passes on ia64.
 
534 6961 d 20 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
533 6961 d 20 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)
 
532 6961 d 20 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
501 6974 d 0 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
368 7036 d 2 h jermar /SPARTAN/trunk/ Physical memory management work.
New frame allocator.
Some architectures need to have bigger heap.