Subversion Repositories HelenOS

Rev

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

Filtering Options

Rev Age Author Path Log message Diff
3973 6275 d 17 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 6286 d 10 h decky /trunk/ overhaul pareas: use one single physical area for the physical address space not belonging to physical memory  
3776 6329 d 15 h jermar /trunk/kernel/arch/ia64/src/mm/ Do not leave last_frame uninitialized on ia64.  
3765 6333 d 15 h jermar /trunk/kernel/arch/ia64/src/mm/ Cleanup ia64's frame.c.  
3763 6333 d 15 h jermar /trunk/ Remove most of the ia64 dead / commented out code.  
3616 6372 d 12 h vana /trunk/ IA64 correctly find CPU wakeup vector from SAL & EFI memory map support  
3578 6383 d 21 h vana /trunk/ Alfa of SMP support on IA64  
2726 6659 d 18 h vana /trunk/ Basic IA64 boot and kernel suport for real machines  
2725 6662 d 14 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 7047 d 8 h jermar /trunk/ (c) versus (C)  
1888 7172 d 11 h jermar /trunk/ C99 compliant header guards (hopefully) everywhere in the kernel.
Formatting and indentation changes.
Small improvements in sparc64.
 
1787 7237 d 10 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1702 7265 d 14 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
900 7370 d 11 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 7390 d 5 h jermar /kernel/trunk/ Reimplement ASID stealing logic.
This time, hopefully, with correct synchronization.
 
816 7390 d 15 h jermar /kernel/trunk/ Fix mapping1 test.

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

Fix ppc32 to at least compile.
 
813 7391 d 4 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 7397 d 6 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 7397 d 8 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