Subversion Repositories HelenOS

Rev

Go to most recent revision | Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
3973 5601 d 7 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 5612 d 0 h decky /trunk/ overhaul pareas: use one single physical area for the physical address space not belonging to physical memory  
2745 5967 d 7 h decky /trunk/ code cleanup (mostly signed/unsigned)
allow extra compiler warnings
 
2267 6282 d 23 h jermar /trunk/kernel/arch/sparc64/src/mm/ Fix indentation.  
2071 6372 d 22 h jermar /trunk/ (c) versus (C)  
2048 6405 d 0 h jermar /trunk/ Formatting and indentation changes.  
1988 6430 d 20 h jermar /trunk/kernel/arch/sparc64/src/mm/ Update comment and move initialization code away from application processor codepath.  
1983 6433 d 2 h jermar /trunk/kernel/arch/sparc64/src/mm/ sparc64 work:
- fix computation of the frame allocator configuration frame
- mark the first physical frame unavailable, no matter what is its address

Because of that, we can now boot past the frame_arch_init() on the Ultra 60 now.
 
1903 6484 d 22 h jermar /trunk/ SMP stuff for sparc64.
Almost complete except for IPIs.
The absence of IPI support deadlocks
the kernel when more CPUs are configured.
 
1793 6560 d 7 h jermar /trunk/kernel/ Change hw_map() on sparc64 to use virtual addresses that are
beyond the end of physical memory. It is beneficial in two
ways: first, physical memory is no longer being wasted by
otherwise necessary calls to frame_alloc() and, second,
virtual addresses for devices are now correctly allocated
and do not overlap with the 4M TLB-locked mapping for
kernel text and data.
 
1790 6561 d 1 h jermar /trunk/ Remove OpenFirmware calls from kernel/ entirely.

Switch the sparc64 port to use bootinfo.

Copy memcpy from boot/ to sparc64 kernel/ and
adjust it for memcpy_from/to_uspace.
 
1787 6563 d 0 h decky / move kernel/trunk, uspace/trunk and boot/trunk to trunk/kernel, trunk/uspace and trunk/boot  
1784 6563 d 22 h jermar /kernel/trunk/ Sync OpenFirmware functionality with boot.
Random cleanup.
 
1702 6591 d 4 h cejka /kernel/trunk/ Kernel doxygen comments updated.  
867 6702 d 4 h jermar /kernel/trunk/ Move OFW functionality of ppc32 memory_init to genarch so that the code can also be used by sparc64.
sparc64 is now close to broken as it lacks functionality to provide identity mapping for the whole phyisical memory.
 
823 6715 d 19 h jermar /kernel/trunk/ Reimplement ASID stealing logic.
This time, hopefully, with correct synchronization.
 
821 6715 d 20 h jermar /kernel/trunk/arch/sparc64/src/mm/ Do not add CONFIG_STACK_SIZE to kernel.size.  
820 6715 d 20 h jermar /kernel/trunk/ Convert size_t, count_t and index_t to 64-bits on 64-bit architectures.
Change some pfn_t usages to count_t, size_t and index_t.
 
815 6716 d 5 h jermar /kernel/trunk/ Fix sparc64 and ia64 to work with the changed frame allocator.

Fix ppc32 to at least compile.
 
813 6716 d 18 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.
 

Show All