Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
3973 5742 d 19 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 5753 d 11 h decky /trunk/ overhaul pareas: use one single physical area for the physical address space not belonging to physical memory  
3776 5796 d 16 h jermar /trunk/kernel/arch/ia64/src/mm/ Do not leave last_frame uninitialized on ia64.  
3765 5800 d 17 h jermar /trunk/kernel/arch/ia64/src/mm/ Cleanup ia64's frame.c.  
3763 5800 d 17 h jermar /trunk/ Remove most of the ia64 dead / commented out code.  
3616 5839 d 13 h vana /trunk/ IA64 correctly find CPU wakeup vector from SAL & EFI memory map support  
3578 5850 d 22 h vana /trunk/ Alfa of SMP support on IA64  
2726 6126 d 20 h vana /trunk/ Basic IA64 boot and kernel suport for real machines  
2725 6129 d 16 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 6514 d 10 h jermar /trunk/ (c) versus (C)  
1888 6639 d 13 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 6704 d 12 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1702 6732 d 16 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
900 6837 d 12 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 6857 d 7 h jermar /kernel/trunk/ Reimplement ASID stealing logic.
This time, hopefully, with correct synchronization.
 
816 6857 d 16 h jermar /kernel/trunk/ Fix mapping1 test.

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

Fix ppc32 to at least compile.
 
813 6858 d 6 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 6864 d 7 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 6864 d 9 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