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
1264 6577 d 8 h jermar /kernel/trunk/generic/ Improve Doxygen-comments.  
1138 6612 d 3 h jermar /kernel/trunk/ CPU stacks must have two frames on ia64.
Make sure both thread stack frames are mapped in before_thread_runs_arch().
Take STACK_FRAMES into account during kernel memory layout initialization in main_bsp().
 
822 6658 d 21 h palkovsky /kernel/trunk/ Changed malloc to include second parameter and documented
recommended usage.
Added zone merging, made ia32 & amd64 to merge found zones.
 
814 6659 d 8 h palkovsky /kernel/trunk/ Cleanup o frame allocator.
Removed early_malloc & initial heap.
Will break ia64, ppc & sparc.
Added e820 table print.
 
788 6662 d 2 h jermar /kernel/trunk/ Move list and fifo data types to adt/.  
786 6662 d 4 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
 
779 6662 d 23 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.
 
762 6665 d 6 h palkovsky /kernel/trunk/ Currently not-working SLAB allocator.
- slightly changed interface to frame_alloc, allow zone preference
 
689 6690 d 4 h bondari /kernel/trunk/ Frame alloc test #1  
673 6694 d 22 h jermar /kernel/trunk/ Add 'version' and 'cpus' kconsole commands.
Remove leading p from names of p* commands.
 
646 6710 d 21 h jermar /kernel/trunk/ Fix cpu_init(): frame_alloc() can return 0 as the valid address of block of frames. Do not signal error.

sparc64 work.
Reorganize kernel vs. userspace memory layout.
Add panic_printf().
Turn dummy() into nop rather than into infinite loop.
 
623 6714 d 10 h jermar /kernel/trunk/ Add SPINLOCK_DECLARE and SPINLOCK_INITIALIZE macros.
SPINLOCK_DECLARE is to be used instead of direct spinlock_t declarations
in dynamically allocated structures on which spinlock_initialize() is called after
their creation.
SPINLOCK_INITIALIZE is to be used instead of direct spinlock_t declarations
of global spinlocks. It declares and initializes the spinlock.
Moreover, both macros are empty on UP so that -Wall warnings about unused structures
get supressed.
 
548 6723 d 1 h jermar /kernel/trunk/ Cleanup and fixes.  
534 6725 d 1 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel again.  
533 6725 d 1 h bondari /SPARTAN/trunk/ Buddy allocator for physical memory complete implementation.
Tested on IA32, AMD64, MIPS32. RWLock Test #5 is not passed.
NOTE: Other architectures could be broken (but should not be)
 
532 6725 d 1 h jermar / Revert renaming of HelenOS/SPARTAN to HelenOS/kernel because of important pending patch.  
501 6737 d 5 h jermar / Rename HelenOS/SPARTAN to HelenOS/kernel.  
458 6751 d 8 h decky /SPARTAN/trunk/ make configuration variables usage consistent  
430 6757 d 22 h jermar /SPARTAN/trunk/ Move src/ and include/ to generic.  
192 6821 d 3 h jermar /SPARTAN/trunk/ Dump implementation of THREAD, TASK and CPU.
Implement preemption-safe versions of THREAD, TASK and CPU using THE.
Get rid of CPU_ID_ARCH on all architectures.
Get rid of write_dr0() and read_dr0() on IA-32.
Get rid of cpu_private_data and cpu_private_data_t.
 
125 6866 d 22 h jermar /SPARTAN/trunk/ Huge indentation fix.  
108 6909 d 5 h decky /SPARTAN/trunk/ doxygen-style comments
NDEBUG in Makefile.config
 
31 6947 d 4 h jermar /SPARTAN/trunk/ Replace the deadlock-prone TLB shootdown algorithm with a deadlock-free implementation.
The implementation is a variant of the CMU TLB consistency algorithm.
Very inefficient implementation of a very inefficient (but correct) algorithm.
 
28 6948 d 8 h jermar /SPARTAN/trunk/ Small improvements.  
24 6954 d 1 h jermar /SPARTAN/trunk/ Small fixes.  
20 6960 d 6 h jermar /SPARTAN/trunk/ Smarter definition of CPU macro.  
16 6963 d 4 h jermar /SPARTAN/trunk/ Switch from mm-based 'the' mechanism to macro-based 'cpu_private_data[CPU_ID_ARCH]' mechanism.
Added l_apic_id() and some other minor APIC changes.
Move gdtr to K_DATA_START section.
Move K_DATA_START section immediately behind K_TEXT_START section so that real-mode addresses work even with growing size of kernel code.
 
15 6964 d 2 h jermar /SPARTAN/trunk/ Introduce macros CPU, THREAD, TASK and use them to replace the->cpu, the->thread, the->task.
Later on, this will make it possible to reference *current* cpu, thread and/or task without the aid from virtual memory.
 
1 7014 d 3 h jermar /SPARTAN/ Initial import