Subversion Repositories HelenOS-historic

Rev

Go to most recent revision | Show changed files | Directory listing | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
787 6672 d 13 h palkovsky /kernel/trunk/generic/ Added constructor/destructor calls to SLAB.
Changed allocation of thread_t structure to use SLAB.
 
786 6672 d 14 h bondari /kernel/trunk/ frame_alloc() functions variations in order to avoid problems with frame_alloc_generic() changes.
IMPORTANT: Parameter order for frame_alloc() was changed
 
783 6672 d 16 h palkovsky /kernel/trunk/generic/ Fixed some typos in slab allocator.
Scheduler now has better algorithm on load balancing.
Unfortunately it reveals deadlock in slab allocator :-/
 
781 6673 d 5 h palkovsky /kernel/trunk/generic/ Still better locking - does not hold global spinlock when
destroying cache.
 
779 6673 d 9 h jermar /kernel/trunk/generic/ Simplify load balancing activation.
This in fact removes the livelock that prevented cpu_sleep() to be called in SMP systems.
 
778 6673 d 11 h palkovsky /kernel/trunk/ Fixed boot process not to call malloc when slab not initialized.
Added simics workaround.
 
777 6673 d 12 h palkovsky /kernel/trunk/generic/ added thread list to kconsole.  
776 6673 d 15 h palkovsky /kernel/trunk/generic/ Added more granular locking to slab allocator and thus fix
hopefully last race condition.
 
775 6673 d 16 h palkovsky /kernel/trunk/generic/ Added scheduler queues output. The scheduler is buggy - on SMP
the cpus never get tu cpu_sleep, in slab2 test on 4 cpus everything
is on the first cpu.
The slab allocator passes tests in this configuration, but in slightly
different(more efficient) locking order it panics. TODO: Find out why
does it panic.
 
772 6674 d 5 h palkovsky /kernel/trunk/ Fixed non-initialized cpu-cache.  
771 6674 d 7 h palkovsky /kernel/trunk/generic/ Implemented malloc/free as SLABs.  
770 6674 d 14 h palkovsky /kernel/trunk/generic/include/ Fix context_save, so that it works even with inlines disabled (-O0).  
767 6675 d 7 h palkovsky /kernel/trunk/ Partially working SLAB CPU cache.  
766 6675 d 8 h palkovsky /kernel/trunk/ Basic SLAB (without CPU-cache) passes test.  
764 6675 d 14 h palkovsky /kernel/trunk/ Tested basic non-cached slab allocation.  
763 6675 d 15 h jermar /kernel/trunk/ Modify frame.h to use shifting instead of multiplication and division.
Define FRAME_WIDTH for all architectures.
 
762 6675 d 16 h palkovsky /kernel/trunk/ Currently not-working SLAB allocator.
- slightly changed interface to frame_alloc, allow zone preference
 
759 6676 d 4 h palkovsky /kernel/trunk/ Skeleton of SLAB allocator.  
756 6677 d 6 h jermar /kernel/trunk/ Memory management work.
Remove the last (i.e. 'root') argument from page_mapping_insert() and page_mapping_find().
Page table address is now extracted from the first (i.e. 'as') argument.
Add a lot of infrastructure to make the above possible.
sparc64 is now broken, most likely because of insufficient identity mapping of physical memory.
 
755 6678 d 5 h jermar /kernel/trunk/ Change page_mapping_find/insert interfaces to take as_t * as first argument
and not asid_t as second argument. This change was necessitated by the
removal of mapping array from as_area_t and the fact that an address
space doesn't have an ASID when it is created.
 

Show All