Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
3973 6237 d 10 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 6248 d 3 h decky /trunk/ overhaul pareas: use one single physical area for the physical address space not belonging to physical memory  
3776 6291 d 8 h jermar /trunk/kernel/arch/ia64/src/mm/ Do not leave last_frame uninitialized on ia64.  
3765 6295 d 8 h jermar /trunk/kernel/arch/ia64/src/mm/ Cleanup ia64's frame.c.  
3763 6295 d 8 h jermar /trunk/ Remove most of the ia64 dead / commented out code.  
3616 6334 d 5 h vana /trunk/ IA64 correctly find CPU wakeup vector from SAL & EFI memory map support  
3578 6345 d 14 h vana /trunk/ Alfa of SMP support on IA64  
2726 6621 d 11 h vana /trunk/ Basic IA64 boot and kernel suport for real machines  
2725 6624 d 7 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 7009 d 1 h jermar /trunk/ (c) versus (C)  
1888 7134 d 5 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 7199 d 3 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1702 7227 d 7 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
900 7332 d 4 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 7351 d 22 h jermar /kernel/trunk/ Reimplement ASID stealing logic.
This time, hopefully, with correct synchronization.
 
816 7352 d 8 h jermar /kernel/trunk/ Fix mapping1 test.

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

Fix ppc32 to at least compile.
 
813 7352 d 22 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 7358 d 23 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 7359 d 1 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.
 

Show All